1. 15 Aug, 2012 39 commits
    • abarth@webkit.org's avatar
      JSDOMWrapper should ASSERT that it has an associated ScriptExecutionContext · df6de5d0
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94053
      
      Reviewed by Sam Weinig.
      
      Previously we were unable have this ASSERT because DOMWindow needed a
      Frame to find Document. Now that we can find the Document without a
      Frame, we can include the ASSERT and sanity will rein across the land.
      
      * bindings/js/JSDOMWrapper.h:
      (WebCore::JSDOMWrapper::globalObject):
      (WebCore::JSDOMWrapper::scriptExecutionContext):
      (WebCore::JSDOMWrapper::JSDOMWrapper):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125688 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      df6de5d0
    • mhahnenberg@apple.com's avatar
      Change behavior of MasqueradesAsUndefined to better accommodate DFG changes · 35d5455b
      mhahnenberg@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=93884
      
      Reviewed by Geoffrey Garen.
      
      Source/JavaScriptCore: 
      
      With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of 
      MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines, 
      we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined 
      objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject). 
      For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not 
      masquerade as undefined within frame B, but it will continue to masquerade in frame A.
      
      There are two primary changes that are taking place here. One is to thread the ExecState* through 
      JSValue::toBoolean and JSCell::toBoolean so that JSCell::toBoolean can check the object's 
      JSGlobalObject to compare it to the lexical JSGlobalObject of the currently running code. If the two 
      are distinct, then the object cannot MasqueradeAsUndefined.
      
      The other change is to perform this comparison of JSGlobalObjects everywhere where the MasqueradesAsUndefined
      flag in the Structure is checked. For C++ code, this check has been factored into its own function in 
      Structure::masqueradesAsUndefined. We only perform this check in the DFG if the current JSGlobalObject has 
      had a MasqueradesAsUndefined object allocated within its context. This conditional compilation is managed 
      through the use of a WatchpointSet in each JSGlobalObject and alternate create() functions for JS DOM wrappers
      that are MasqueradesAsUndefined.
      
      * API/JSValueRef.cpp:
      (JSValueToBoolean):
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
      * bytecode/Watchpoint.h:
      (WatchpointSet):
      * debugger/DebuggerCallFrame.h:
      (JSC::DebuggerCallFrame::callFrame):
      * dfg/DFGAbstractState.cpp:
      (JSC::DFG::AbstractState::execute):
      * dfg/DFGCFGSimplificationPhase.cpp:
      (JSC::DFG::CFGSimplificationPhase::run):
      * dfg/DFGOperations.cpp:
      * dfg/DFGOperations.h:
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
      (JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
      (JSC::DFG::SpeculativeJIT::compile):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
      (JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
      (JSC::DFG::SpeculativeJIT::compile):
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::privateExecute):
      * jit/JITOpcodes.cpp:
      (JSC::JIT::emit_op_is_undefined):
      (JSC::JIT::emit_op_jeq_null):
      (JSC::JIT::emit_op_jneq_null):
      (JSC::JIT::emit_op_eq_null):
      (JSC::JIT::emit_op_neq_null):
      * jit/JITOpcodes32_64.cpp:
      (JSC::JIT::emit_op_is_undefined):
      (JSC::JIT::emit_op_jeq_null):
      (JSC::JIT::emit_op_jneq_null):
      (JSC::JIT::emit_op_eq_null):
      (JSC::JIT::emit_op_neq_null):
      * jit/JITStubs.cpp:
      (JSC::DEFINE_STUB_FUNCTION):
      * llint/LLIntSlowPaths.cpp:
      (JSC::LLInt::LLINT_SLOW_PATH_DECL):
      * llint/LowLevelInterpreter32_64.asm:
      * llint/LowLevelInterpreter64.asm:
      * runtime/ArrayPrototype.cpp:
      (JSC::arrayProtoFuncFilter):
      (JSC::arrayProtoFuncEvery):
      (JSC::arrayProtoFuncSome):
      * runtime/BooleanConstructor.cpp:
      (JSC::constructBoolean):
      (JSC::callBooleanConstructor):
      * runtime/JSCell.h:
      (JSCell):
      * runtime/JSGlobalObject.cpp:
      (JSC::JSGlobalObject::JSGlobalObject):
      * runtime/JSGlobalObject.h:
      (JSGlobalObject):
      (JSC::JSGlobalObject::masqueradesAsUndefinedWatchpoint):
      * runtime/JSString.h:
      (JSC::JSCell::toBoolean):
      (JSC::JSValue::toBoolean):
      * runtime/JSValue.h:
      * runtime/ObjectConstructor.cpp:
      (JSC::toPropertyDescriptor):
      * runtime/Operations.cpp:
      (JSC::jsTypeStringForValue):
      (JSC::jsIsObjectType):
      * runtime/Operations.h:
      (JSC):
      (JSC::JSValue::equalSlowCaseInline):
      * runtime/RegExpConstructor.cpp:
      (JSC::setRegExpConstructorMultiline):
      * runtime/RegExpPrototype.cpp:
      (JSC::regExpProtoFuncToString):
      * runtime/Structure.h:
      (Structure):
      (JSC::Structure::globalObjectOffset):
      (JSC::Structure::masqueradesAsUndefined):
      (JSC):
      
      Source/WebCore: 
      
      With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of 
      MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines, 
      we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined 
      objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject). 
      For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not 
      masquerade as undefined within frame B, but it will continue to masquerade in frame A.
      
      Test: fast/js/document-all-between-frames.html
      
      All of the changes in WebCore are simply passing the additional ExecState argument to JSValue::toBoolean.
      
      * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
      (WebCore::JSSQLStatementErrorCallback::handleEvent):
      * bindings/js/JSDOMWindowCustom.cpp:
      (WebCore::JSDOMWindow::addEventListener):
      (WebCore::JSDOMWindow::removeEventListener):
      * bindings/js/JSDataViewCustom.cpp:
      (WebCore::getDataViewMember):
      * bindings/js/JSDeviceMotionEventCustom.cpp:
      (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
      * bindings/js/JSDeviceOrientationEventCustom.cpp:
      (WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):
      * bindings/js/JSDictionary.cpp:
      (WebCore::JSDictionary::convertValue):
      * bindings/js/JSDirectoryEntryCustom.cpp:
      (WebCore::JSDirectoryEntry::getFile):
      (WebCore::JSDirectoryEntry::getDirectory):
      * bindings/js/JSDirectoryEntrySyncCustom.cpp:
      (WebCore::getFlags):
      * bindings/js/JSHTMLCanvasElementCustom.cpp:
      (WebCore::JSHTMLCanvasElement::getContext):
      * bindings/js/JSInspectorFrontendHostCustom.cpp:
      (WebCore::populateContextMenuItems):
      * bindings/js/JSMessageEventCustom.cpp:
      (WebCore::handleInitMessageEvent):
      * bindings/js/JSWebGLRenderingContextCustom.cpp:
      (WebCore::dataFunctionMatrix):
      * bindings/js/JSXMLHttpRequestCustom.cpp:
      (WebCore::JSXMLHttpRequest::open):
      * bindings/js/JavaScriptCallFrame.cpp:
      (WebCore::JavaScriptCallFrame::exec):
      (WebCore):
      * bindings/js/JavaScriptCallFrame.h:
      (JavaScriptCallFrame):
      * bindings/js/ScriptDebugServer.cpp:
      (WebCore::ScriptDebugServer::hasBreakpoint):
      * bindings/scripts/CodeGeneratorJS.pm: Also add the custom create function for MasqueradesAsUndefined JS DOM wrappers.
      (GenerateEventListenerCall):
      (GenerateHeader):
      (JSValueToNative):
      * bindings/scripts/test/JS/JSTestEventTarget.cpp:
      (WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
      (WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
      * bindings/scripts/test/JS/JSTestEventTarget.h:
      (WebCore::JSTestEventTarget::create):
      * bindings/scripts/test/JS/JSTestObj.cpp:
      (WebCore::setJSTestObjCreate):
      (WebCore::setJSTestObjReflectedBooleanAttr):
      (WebCore::setJSTestObjReflectedCustomBooleanAttr):
      (WebCore::jsTestObjPrototypeFunctionAddEventListener):
      (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
      * bridge/c/c_utility.cpp:
      (JSC::Bindings::convertValueToNPVariant):
      * bridge/jni/jni_jsobject.mm:
      (JavaJSObject::convertValueToJObject):
      * bridge/qt/qt_runtime.cpp:
      (JSC::Bindings::convertValueToQVariant):
      
      Source/WebKit/mac: 
      
      With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of 
      MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines, 
      we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined 
      objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject). 
      For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not 
      masquerade as undefined within frame B, but it will continue to masquerade in frame A.
      
      * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
      (WebKit::NetscapePluginInstanceProxy::addValueToArray): Passing ExecState to toBoolean call.
      
      Source/WebKit2: 
      
      With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of 
      MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines, 
      we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined 
      objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject). 
      For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not 
      masquerade as undefined within frame B, but it will continue to masquerade in frame A.
      
      * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
      (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant): Passing ExecState to toBoolean call.
      
      LayoutTests: 
      
      Added a test that uses a variety of ways of checking whether something is correctly 
      masquerading as undefined (or not) in a subframe.
      
      * fast/js/document-all-between-frames-expected.txt: Added.
      * fast/js/document-all-between-frames.html: Added.
      * fast/js/resources/document-all-between-frames-subframe.html: Added.
      * platform/chromium/TestExpectations: Chromium treats document.all differently, so skip our new test.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125687 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      35d5455b
    • abarth@webkit.org's avatar
      Update TestExpectations entry to refer to an actual bug. · 87917fe4
      abarth@webkit.org authored
      * platform/chromium/TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125686 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      87917fe4
    • commit-queue@webkit.org's avatar
      [Gtk] atk_text_get_text_at_offset() fails to provide the correct line for... · b042b553
      commit-queue@webkit.org authored
      [Gtk] atk_text_get_text_at_offset() fails to provide the correct line for paragraphs in list items whose text wraps
      https://bugs.webkit.org/show_bug.cgi?id=83435
      
      Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-08-15
      Reviewed by Chris Fleizach.
      
      Source/WebCore:
      
      Fix a logic error when checking if an object is a list marker.
      
      * accessibility/gtk/WebKitAccessibleInterfaceText.cpp:
      (textForRenderer):
      
      Source/WebKit/gtk:
      
      Updated unit test to include a paragraph in a list item when testing atk_text_get_text_at_offset().
      
      * tests/testatk.c:
      (testWebkitAtkGetTextAtOffsetWithSpecialCharacters):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125685 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b042b553
    • commit-queue@webkit.org's avatar
      There is additional space not belonged to a table between the table cells · 01f61419
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=74864
      
      Patch by Arpita Bahuguna <arpitabahuguna@gmail.com> on 2012-08-15
      Reviewed by Julien Chaffraix.
      
      Source/WebCore:
      
      Hittest for a point on the edge, i.e. between two table columns, currently
      does not return any matching underlying element.
      
      A hittest on such a point (on the edge of two table columns) should return
      the column that lies either on the logical right/bottom of the said point.
      
      Tests: fast/table/hittest-tablecell-bottom-edge.html
             fast/table/hittest-tablecell-right-edge.html
             fast/table/hittest-tablecell-with-borders-bottom-edge.html
             fast/table/hittest-tablecell-with-borders-right-edge.html
      
      * rendering/RenderTableSection.cpp:
      (WebCore::RenderTableSection::spannedRows):
      Removed the FIXME regarding the correctness of the usage of the upper_bound algorithm
      since that is now verified by the testcases in this patch. Also, the comment
      regarding the inconsistency between the algorithms used in spannedRows and spannedColumns
      is no longer valid.
      
      (WebCore::RenderTableSection::spannedColumns):
      Changed lower_bound() algorithm to upper_bound() for obtaining the next column.
      This is now similar to what is used for obtaining the next row in spannedRows().
      
      LayoutTests:
      
      * fast/table/hittest-tablecell-bottom-edge-expected.txt: Added.
      * fast/table/hittest-tablecell-bottom-edge.html: Added.
      * fast/table/hittest-tablecell-right-edge-expected.txt: Added.
      * fast/table/hittest-tablecell-right-edge.html: Added.
      Testcases added for verifying that the proper node is returned upon hit test
      carried out at a point lying on the edge of two table cells.
      
      * fast/table/hittest-tablecell-with-borders-bottom-edge-expected.txt: Added.
      * fast/table/hittest-tablecell-with-borders-bottom-edge.html: Added.
      * fast/table/hittest-tablecell-with-borders-right-edge-expected.txt: Added.
      * fast/table/hittest-tablecell-with-borders-right-edge.html: Added.
      These testcases verify the aforementioned behavior when the table cells
      also have border specified for them.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125684 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      01f61419
    • peter@chromium.org's avatar
      Fix a warning in TestWebKitAPI's MediaTime test-suite · 7769cce6
      peter@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94096
      
      Reviewed by Adam Barth.
      
      This warning is visible when building the file with certain GCC versions,
      including the one used by Chromium for Android. The warning is visible in
      the cr-android build bot output:
      
      MediaTime.cpp:152: warning: this decimal constant is unsigned only in ISO C90
      
      * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
      (TestWebKitAPI::TEST):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125683 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7769cce6
    • annacc@chromium.org's avatar
      Add the timestampOffset attribute to SourceBuffer. · c2d132c5
      annacc@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93303
      
      Reviewed by Dimitri Glazkov.
      
      On the 30 July 2012 version of the Media Source Extensions spec, a timestampOffset
      attribute was added to the SourceBuffer object:
      http://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html#dom-timestampoffset
      
      Source/WebCore:
      
      Tests: additions to http/tests/media/media-source/video-media-source-objects.html
      
      * Modules/mediasource/MediaSource.cpp:
      (WebCore::MediaSource::setTimestampOffset): Set the timestampOffset on MediaPlayer.
      (WebCore):
      * Modules/mediasource/MediaSource.h:
      (MediaSource):
      * Modules/mediasource/SourceBuffer.cpp:
      (WebCore::SourceBuffer::SourceBuffer): Let the timestampOffset be 0 initially
      (WebCore::SourceBuffer::timestampOffset): Return the last value set.
      (WebCore):
      (WebCore::SourceBuffer::setTimestampOffset): Forward the call onto MediaSouce.
      * Modules/mediasource/SourceBuffer.h:
      (SourceBuffer):
      * Modules/mediasource/SourceBuffer.idl: Create the new timestampOffset attr.
      * platform/graphics/MediaPlayer.cpp:
      (WebCore::NullMediaPlayerPrivate::sourceSetTimestampOffset): A null media player
          should just return false (nothing to set).
      (WebCore):
      (WebCore::MediaPlayer::sourceSetTimestampOffset):  Forward the call.
      * platform/graphics/MediaPlayer.h:
      * platform/graphics/MediaPlayerPrivate.h:
      (WebCore::MediaPlayerPrivateInterface::sourceSetTimestampOffset):
      
      Source/WebKit/chromium:
      
      * public/WebMediaPlayer.h:
      (WebKit::WebMediaPlayer::sourceSetTimestampOffset): Add the new method.
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit):
      (WebKit::WebMediaPlayerClientImpl::sourceSetTimestampOffset): Forward the call.
      * src/WebMediaPlayerClientImpl.h:
      (WebMediaPlayerClientImpl):
      
      LayoutTests:
      
      * http/tests/media/media-source/video-media-source-objects-expected.txt:
      * http/tests/media/media-source/video-media-source-objects.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125682 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c2d132c5
    • vsevik@chromium.org's avatar
      Source/WebCore: Web Inspector: Incorrect XHR responses when two async xhrs are sent synchronously · dcc56abd
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=91630
      
      Patch by Pavel Chadnov <chadnov@google.com> on 2012-08-15
      Reviewed by Vsevolod Vlasov.
      
      CachedResource object for XHR response is now taken from ResourceLoader (if it's possible).
      
      Test: http/tests/inspector/network/network-xhr-async-double.html
      
      * inspector/InspectorInstrumentation.cpp:
      (WebCore):
      (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
      (WebCore::InspectorInstrumentation::didReceiveResourceResponseButCanceledImpl):
      * inspector/InspectorInstrumentation.h:
      (InspectorInstrumentation):
      (WebCore::InspectorInstrumentation::didReceiveResourceResponse):
      * inspector/InspectorResourceAgent.cpp:
      (WebCore::InspectorResourceAgent::willSendRequest):
      (WebCore::InspectorResourceAgent::didReceiveResponse):
      * inspector/InspectorResourceAgent.h:
      (WebCore):
      (InspectorResourceAgent):
      * loader/DocumentThreadableLoader.cpp:
      (WebCore::DocumentThreadableLoader::didReceiveResponse):
      * loader/ResourceLoadNotifier.cpp:
      (WebCore::ResourceLoadNotifier::didReceiveResponse):
      (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
      * loader/ResourceLoadNotifier.h:
      (ResourceLoadNotifier):
      * loader/ResourceLoader.cpp:
      (WebCore::ResourceLoader::isSubresourceLoader):
      (WebCore):
      * loader/ResourceLoader.h:
      (ResourceLoader):
      * loader/SubresourceLoader.cpp:
      (WebCore::SubresourceLoader::cachedResource):
      (WebCore):
      (WebCore::SubresourceLoader::isSubresourceLoader):
      * loader/SubresourceLoader.h:
      (SubresourceLoader):
      * loader/appcache/ApplicationCacheGroup.cpp:
      (WebCore::ApplicationCacheGroup::didReceiveResponse):
      
      LayoutTests: Web Inspector: Incorrect XHR responses when two async xhrs are sent synchronously
      https://bugs.webkit.org/show_bug.cgi?id=91630
      
      Patch by Pavel Chadnov <chadnov@google.com> on 2012-08-15
      Reviewed by Vsevolod Vlasov.
      
      New test for two async XHRs sent synchronously.
      
      * http/tests/inspector/network-test.js:
      (doXHR):
      (doXHRWithPayload.xhr.onreadystatechange):
      (doXHRWithPayload):
      * http/tests/inspector/network/network-xhr-async-double-expected.txt: Added.
      * http/tests/inspector/network/network-xhr-async-double.html: Added.
      * http/tests/inspector/network/resources/echo-payload.php: Added.
      * platform/chromium/http/tests/inspector/console-xhr-logging-async-expected.txt:
      * platform/chromium/http/tests/inspector/console-xhr-logging-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125681 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dcc56abd
    • commit-queue@webkit.org's avatar
      [BlackBerry] Use nested layout when rotating · f813d03e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94117
      
      Partially patched by Arvid Nilsson.
      
      Patch by Leo Yang <leoyang@rim.com> on 2012-08-15
      Reviewed by George Staikos.
      Reviewed internally by Arvid Nilsson.
      
      When rotating the content width used for fixedLayoutSize is not
      correct because we are changing the rotation and the content with
      should be determined after layout. So we set the with to 0 if we
      are rotating and beginning the nested layout. And in setViewportSize
      we need a nested layout loop to trigger zoom-to-fit.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::fixedLayoutSize):
      (BlackBerry::WebKit::WebPagePrivate::setViewportSize):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125680 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f813d03e
    • tonikitoo@webkit.org's avatar
      [BlackBerry] Stop copying ScrollViewBase vector all over · 1ed197c7
      tonikitoo@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94021
      
      Reviewed by Rob Buis.
      
      It outlives long enough in WebKit that we can
      just pass a const+ref of it.
      
      Internally reviewed by Gen Mak.
      
      * Api/WebPageClient.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125679 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1ed197c7
    • tonikitoo@webkit.org's avatar
      Robust-fy the LayerWebKitThread ownership with InRegionScroller · 4461aa0a
      tonikitoo@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93983
      PR #191737
      
      Reviewed by Yong Li.
      Patch by Antonio Gomes <agomes@rim.com>
      
      Patch changes the way we currently keep track of the active scrollable area
      objects: before, we acquired the scrollable areas and just passed them in a vector up
      to the client, copying it over and over again. Also, it was a client responsability to
      delete stuff (BAD!).
      Now, we keep track of vector within InRegionScroller, as a class member, which allows us to
      avoid copies (in follow up patch), and control until when these objects outlive.
      
      Patch also changes InRegionScrollableArea to "retptr" the composited layer
      associated to it (if any). This ensure we have a non-null scrollable element always.
      
      As mentioned, InRegionScroller is now responsible for deleting and vector of scrollable areas.
      
      Internally reviewed by Arvid Nilsson.
      
      * Api/InRegionScroller.cpp:
      (WebKit):
      (BlackBerry::WebKit::InRegionScrollerPrivate::reset): Method is now responsible for
      deleting the tracked scrollable areas.
      (BlackBerry::WebKit::InRegionScrollerPrivate::calculateInRegionScrollableAreasForPoint):
      Renamed from 'inRegionScrollableAreasForPoint'. It was changed in order to store the
      scrollable area objects instead of just pass a copy of them up to the client.
      (BlackBerry::WebKit::InRegionScrollerPrivate::activeInRegionScrollableAreas): Getter.
      (BlackBerry::WebKit::InRegionScrollerPrivate::pushBackInRegionScrollable): It was
      promoted to a class method instead of a local helper.
      * Api/InRegionScroller_p.h:
      (WebKit):
      (InRegionScrollerPrivate):
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::setScrollOriginPoint): Adjustments needed due to the
      above changed.
      * WebKitSupport/InRegionScrollableArea.cpp:
      (BlackBerry::WebKit::InRegionScrollableArea::~InRegionScrollableArea): Clear up the cached layer.
      (WebKit):
      (BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):
      * WebKitSupport/InRegionScrollableArea.h:
      (InRegionScrollableArea):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125678 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4461aa0a
    • commit-queue@webkit.org's avatar
      Web Inspector: Use default parameter on reportResult in InspectorFileSystemAgent · 7d60f613
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93930
      
      Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-08-15
      Reviewed by Vsevolod Vlasov.
      
      No functional change.
      
      * inspector/InspectorFileSystemAgent.cpp:
      (WebCore):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125677 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7d60f613
    • commit-queue@webkit.org's avatar
      [BlackBerry] Check for valid field focus before processing a spellcheck request · 9f51cb97
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94115
      
      Patch by Nima Ghanavatian <nghanavatian@rim.com> on 2012-08-15
      Reviewed by Rob Buis.
      
      PR192891
      Checking for valid field focus before processing the spellcheck
      request.
      
      Internally reviewed by Mike Fenton.
      
      * WebKitSupport/InputHandler.cpp:
      (BlackBerry::WebKit::InputHandler::requestCheckingOfString):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125676 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9f51cb97
    • commit-queue@webkit.org's avatar
      Fix the 'git log' call in VCSUtils.pm for Windows · 7227bfea
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94113
      
      Patch by Kevin Funk <kevin.funk@kdab.com> on 2012-08-15
      Reviewed by Kenneth Rohde Christiansen.
      
      Failed because of invalid enquoting characters.
      
      * Scripts/VCSUtils.pm:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125675 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7227bfea
    • kov@webkit.org's avatar
      [jhbuild] move md5sum checking to update-webkit-libs-jhbuild · f5b7edb8
      kov@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93208
      
      Reviewed by Martin Robinson.
      
      This change makes the md5sum check and saving be done by the script
      that performs the dependencies update. build-webkit no longer prefixes
      calls to commands with jhbuild-wrapper if jhbuild has not been
      bootstrapped by the developer and --update-gtk is not given.
      
      * Scripts/update-webkit-libs-jhbuild:
      (getMD5HashForFile): moved from webkitdirs.
      (jhbuildConfigurationChanged): ditto.
      (saveJhbuildMd5): ditto.
      (cleanJhbuild): ditto, and changed to run jhbuild clean before removing
      jhbuild.
      * Scripts/webkitdirs.pm:
      (runAutogenForAutotoolsProjectIfNecessary): use jhbuildWrapperPrefixIfNeeded.
      (buildAutotoolsProject): ditto.
      (jhbuildWrapperPrefixIfNeeded): add a code branch for GTK+.
      (generateBuildSystemFromCMakeProject): call update-webkitefl-libs
      unconditionally for EFL.
      * jhbuild/jhbuild-wrapper:
      (update_webkit_libs_jhbuild): removed, jhbuild-wrapper no longer runs the
      update script itself
      (ensure_jhbuild): remove update call.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125674 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f5b7edb8
    • vsevik@chromium.org's avatar
      Web Inspector: TabbedEditorContainer Doens't show '*' near modified file name sometimes. · d01df445
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94095
      
      Reviewed by Pavel Feldman.
      
      TabbedEditorContainer now correctly updates event listeners on UISourceCodeReplaced event.
      
      * inspector/front-end/TabbedEditorContainer.js:
      (WebInspector.TabbedEditorContainer.prototype._appendFileTab):
      (WebInspector.TabbedEditorContainer.prototype._tabClosed):
      (WebInspector.TabbedEditorContainer.prototype._addUISourceCodeListeners):
      (WebInspector.TabbedEditorContainer.prototype._removeUISourceCodeListeners):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125673 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d01df445
    • vsevik@chromium.org's avatar
      Web Inspector: Scroll/selection are not saved in sources panel editors sometimes. · 009d28b9
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94098
      
      Reviewed by Pavel Feldman.
      
      SourceFrame listeners and _currentFile field are now cleared only when currently open tab is closed.
      
      * inspector/front-end/TabbedEditorContainer.js:
      (WebInspector.TabbedEditorContainer.prototype._tabClosed):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125672 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      009d28b9
    • commit-queue@webkit.org's avatar
      [EFL][WK2] Refactoring: start using WKEinaSharedString in ewk_ classes · e7f5cabb
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93964
      
      Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-08-15
      Reviewed by Kenneth Rohde Christiansen.
      
      Started using WKEinaSharedString where it is advisable.
      
      * UIProcess/API/cpp/efl/WKEinaSharedString.cpp:
      (WKEinaSharedString::operator==):
      * UIProcess/API/cpp/efl/WKEinaSharedString.h:
      * UIProcess/API/efl/ewk_download_job.cpp:
      (_Ewk_Download_Job):
      (_Ewk_Download_Job::_Ewk_Download_Job):
      (_Ewk_Download_Job::~_Ewk_Download_Job):
      (ewk_download_job_destination_set):
      (ewk_download_job_suggested_filename_set):
      * UIProcess/API/efl/ewk_intent.cpp:
      (_Ewk_Intent):
      (_Ewk_Intent::_Ewk_Intent):
      (_Ewk_Intent::~_Ewk_Intent):
      (ewk_intent_action_get):
      (ewk_intent_type_get):
      (ewk_intent_service_get):
      * UIProcess/API/efl/ewk_intent_service.cpp:
      (_Ewk_Intent_Service):
      (_Ewk_Intent_Service::_Ewk_Intent_Service):
      (_Ewk_Intent_Service::~_Ewk_Intent_Service):
      (ewk_intent_service_action_get):
      (ewk_intent_service_type_get):
      (ewk_intent_service_href_get):
      (ewk_intent_service_title_get):
      (ewk_intent_service_disposition_get):
      * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
      (_Ewk_Navigation_Policy_Decision):
      (_Ewk_Navigation_Policy_Decision::_Ewk_Navigation_Policy_Decision):
      (_Ewk_Navigation_Policy_Decision::~_Ewk_Navigation_Policy_Decision):
      * UIProcess/API/efl/ewk_url_request.cpp:
      (_Ewk_Url_Request):
      (_Ewk_Url_Request::_Ewk_Url_Request):
      (_Ewk_Url_Request::~_Ewk_Url_Request):
      (ewk_url_request_url_get):
      (ewk_request_cookies_first_party_get):
      (ewk_url_request_http_method_get):
      * UIProcess/API/efl/ewk_url_response.cpp:
      (_Ewk_Url_Response):
      (_Ewk_Url_Response::_Ewk_Url_Response):
      (_Ewk_Url_Response::~_Ewk_Url_Response):
      (ewk_url_response_url_get):
      (ewk_url_response_mime_type_get):
      * UIProcess/API/efl/ewk_view.cpp:
      (_Ewk_View_Private_Data):
      (_Ewk_View_Private_Data::_Ewk_View_Private_Data):
      (_Ewk_View_Private_Data::~_Ewk_View_Private_Data):
      (ewk_view_uri_update):
      (ewk_view_title_get):
      (ewk_view_theme_set):
      (ewk_view_setting_encoding_custom_get):
      (ewk_view_setting_encoding_custom_set):
      * UIProcess/API/efl/ewk_web_error.cpp:
      (_Ewk_Web_Error):
      (_Ewk_Web_Error::_Ewk_Web_Error):
      (_Ewk_Web_Error::~_Ewk_Web_Error):
      (ewk_web_error_url_get):
      (ewk_web_error_description_get):
      * UIProcess/API/efl/ewk_web_resource.cpp:
      (_Ewk_Web_Resource):
      (_Ewk_Web_Resource::_Ewk_Web_Resource):
      (_Ewk_Web_Resource::~_Ewk_Web_Resource):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125671 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e7f5cabb
    • commit-queue@webkit.org's avatar
      [WK2] Add support for Web Intents MessagePorts · 6ff3153f
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=89072
      
      Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-15
      Reviewed by Kenneth Rohde Christiansen.
      
      Source/WebKit2:
      
      Add support for WebIntents MessagePorts in WebKit2.
      MessagePorts can be passed with a Web Intent in
      order to open a direct communication channel
      between the Web application and the intent service.
      
      This functionality is already supported by WebKit 1.
      
      This patch introduces a new InjectedBundleIntent
      class which wraps a WebCore::Intent. This way
      information regarding the MessagePorts in a Web
      Intent is kept when using an injected bundle.
      
      For the UIProcess, WebIntentData now carries
      identifiers for the MessagePorts which can go over
      IPC. Those identifiers map to actual MessagePorts
      stored in the Web process. This way, when the UI
      delivers an intent to a frame, we can get back the
      corresponding MessagePorts from the Web process
      before delivering the intent to the DOMWindow.
      
      This functionality is already tested by:
      
      - webintents/web-intents-invoke-port.html
      - webintents/web-intents-obj-constructor.html
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Shared/API/c/WKBase.h:
      * Shared/APIObject.h:
      * Shared/IntentData.cpp: Add MessagePort identifiers.
      (WebKit::IntentData::IntentData):
      (WebKit::IntentData::encode):
      (WebKit::IntentData::decode):
      * Shared/IntentData.h:
      (IntentData):
      * Target.pri:
      * UIProcess/API/C/WKIntentData.cpp: Rename WKIntentDataCopyExtra() to
      WKIntentDataCopyExtraValue() for clarity.
      (WKIntentDataCopyExtraValue):
      * UIProcess/API/C/WKIntentData.h: Remove WKIntentDataCreate() function now
      that WTR uses WKBundleIntentCreate() instead.
      * UIProcess/API/efl/ewk_intent.cpp:
      (ewk_intent_extra_get): Use WKIntentDataCopyExtraValue() instead of
      WKIntentDataCopyExtra() since it was renamed.
      * UIProcess/WebIntentData.cpp:
      (WebKit::WebIntentData::WebIntentData):
      (WebKit::WebIntentData::~WebIntentData): Remove MessagePorts from WebProcess upon
      WebIntentData destruction.
      (WebKit):
      (WebKit::WebIntentData::extras):
      * UIProcess/WebIntentData.h:
      (WebKit):
      (WebKit::WebIntentData::create):
      (WebIntentData):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::didReceiveIntentForFrame):
      * UIProcess/WebProcessProxy.cpp:
      (WebKit):
      (WebKit::WebProcessProxy::removeMessagePortChannel):
      * UIProcess/WebProcessProxy.h:
      (WebProcessProxy):
      * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
      (WebKit):
      * WebProcess/InjectedBundle/API/c/WKBundleIntent.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKIntentData.cpp.
      (WKBundleIntentGetTypeID):
      (WKBundleIntentCreate):
      (WKBundleIntentCopyAction):
      (WKBundleIntentCopyType):
      (WKBundleIntentCopyService):
      (WKBundleIntentCopySuggestions):
      (WKBundleIntentCopyExtraValue):
      (WKBundleIntentCopyExtras):
      (WKBundleIntentMessagePortCount):
      * WebProcess/InjectedBundle/API/c/WKBundleIntent.h: Copied from Source/WebKit2/UIProcess/API/C/WKIntentData.h.
      * WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.cpp:
      (WKBundleIntentRequestCopyIntent):
      * WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.h:
      * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
      (WKBundlePageDeliverIntentToFrame):
      * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
      * WebProcess/InjectedBundle/InjectedBundleIntent.cpp: Copied from Source/WebKit2/UIProcess/WebIntentData.cpp.
      (WebKit):
      (WebKit::InjectedBundleIntent::create):
      (WebKit::InjectedBundleIntent::InjectedBundleIntent):
      (WebKit::InjectedBundleIntent::action):
      (WebKit::InjectedBundleIntent::payloadType):
      (WebKit::InjectedBundleIntent::service):
      (WebKit::InjectedBundleIntent::data):
      (WebKit::InjectedBundleIntent::extra):
      (WebKit::InjectedBundleIntent::extras):
      (WebKit::InjectedBundleIntent::suggestions):
      * WebProcess/InjectedBundle/InjectedBundleIntent.h: Copied from Source/WebKit2/UIProcess/WebIntentData.h.
      (WebKit):
      (InjectedBundleIntent):
      (WebKit::InjectedBundleIntent::coreIntent):
      (WebKit::InjectedBundleIntent::type):
      * WebProcess/InjectedBundle/InjectedBundleIntentRequest.cpp:
      (WebKit::InjectedBundleIntentRequest::intent):
      * WebProcess/InjectedBundle/InjectedBundleIntentRequest.h:
      (WebKit):
      (InjectedBundleIntentRequest):
      * WebProcess/WebPage/WebFrame.cpp:
      (WebKit::WebFrame::deliverIntent):
      (WebKit):
      * WebProcess/WebPage/WebFrame.h:
      (WebCore):
      (WebFrame):
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit):
      (WebKit::WebPage::deliverCoreIntentToFrame):
      * WebProcess/WebPage/WebPage.h:
      (WebCore):
      (WebPage):
      * WebProcess/WebProcess.cpp: Store MessagePorts in WebProcess and keep mapping with
      their identifiers.
      (WebKit):
      (WebKit::WebProcess::addMessagePortChannel):
      (WebKit::WebProcess::messagePortChannel):
      (WebKit::WebProcess::removeMessagePortChannel):
      * WebProcess/WebProcess.h:
      (WebCore):
      (WebProcess):
      * WebProcess/WebProcess.messages.in:
      
      Tools:
      
      Use WKBundleIntent instead of WebIntentData in
      WebKitTestRunner. WTR now prints the number of
      MessagePorts in received Web intents as
      expected by the following layout tests:
      webintents/web-intents-invoke-port.html
      webintents/web-intents-obj-constructor.html
      
      * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
      (WTR::InjectedBundlePage::didReceiveIntentForFrame):
      * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
      (WTR::LayoutTestController::deliverWebIntent):
      
      LayoutTests:
      
      Unskip webintents/web-intents-invoke-port.html and
      webintents/web-intents-obj-constructor.html for
      WebKit2 EFL now that information about message ports
      is correctly displayed by WebKitTestRunner.
      
      * platform/efl-wk2/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125670 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6ff3153f
    • commit-queue@webkit.org's avatar
      [EFL] Remove image expectation added for a ref test · e6e8cff3
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94090
      
      Unreviewed gardening.
      
      Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-08-15
      
      * platform/efl/TestExpectations:
      * platform/efl/fast/css-generated-content/quotes-lang-expected.png: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125669 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e6e8cff3
    • vsevik@chromium.org's avatar
      Web Inspector: [REGRESSION] "save as" of edited source in developer mode fails to update saved file · e452fc34
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94074
      
      Reviewed by Pavel Feldman.
      
      Added dirty flag check when saving uiSourceCode to save working copy in this case.
      
      * inspector/front-end/HandlerRegistry.js:
      (WebInspector.HandlerRegistry.prototype.appendApplicableItems.save):
      (WebInspector.HandlerRegistry.prototype.appendApplicableItems):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125668 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e452fc34
    • kkristof@inf.u-szeged.hu's avatar
      [Qt] Unreviewed gardening. Add platfrom specific expected results after r125593. · 52b6bddc
      kkristof@inf.u-szeged.hu authored
      Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-08-15
      
      * platform/qt-5.0-wk2/http/tests/misc/window-dot-stop-expected.txt: Added.
      * platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added.
      * platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added.
      * platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
      * platform/qt-5.0-wk2/http/tests/xmlhttprequest/abort-should-cancel-load-expected.txt: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125667 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      52b6bddc
    • shinyak@chromium.org's avatar
      [Chromium Mac] Unreviewed, rebaseline after r125659. · 32401869
      shinyak@chromium.org authored
      * fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt: Renamed from LayoutTests/platform/efl/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt.
      * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
      * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt:
      * platform/chromium-win-xp/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt:
      * platform/gtk/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125666 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      32401869
    • peter@chromium.org's avatar
      [Chromium] Roll WebKit Chromium DEPS to r151672 · 16ed046a
      peter@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94091
      
      Unreviewed DEPS roll.
      
      This also adds the new dependency on third_party/skia/gyp/, as was
      introduced in Chromium's revision 151463.
      
      
      * DEPS:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125665 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      16ed046a
    • ossy@webkit.org's avatar
      [Qt] Unreviewed gardening after r125659. · aa809dd2
      ossy@webkit.org authored
      * platform/qt/Skipped: Skip new tests because of disabled SHADOW_DOM
      * platform/qt/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png:
      * platform/qt/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
      * platform/qt/fast/dom/HTMLMeterElement/meter-element-expected.txt: Added.
      * platform/qt/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt: Added.
      * platform/qt/fast/dom/HTMLMeterElement/meter-optimums-expected.png:
      * platform/qt/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
      * platform/qt/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.png:
      * platform/qt/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
      * platform/qt/fast/dom/HTMLMeterElement/meter-styles-expected.png:
      * platform/qt/fast/dom/HTMLMeterElement/meter-styles-expected.txt:
      * platform/qt/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125664 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aa809dd2
    • commit-queue@webkit.org's avatar
      Relative units are not set when the canvas has not parent · 74d3b69c
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93840
      
      Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-08-15
      Reviewed by Kenneth Rohde Christiansen.
      
      Source/WebCore:
      
      Set the default font when no parent style is set. It will make
      possible to apply relative units when a parent is not set.
      
      No new tests, unskipped the existing ones.
      
      * css/StyleBuilder.cpp:
      (WebCore::ApplyPropertyFontSize::applyValue):
      Make it possible to apply relative units if a parent style exist but
      not a parent node. It works like this for em and ex, but not for
      percent units.
      * html/canvas/CanvasRenderingContext2D.cpp:
      (WebCore):
      (WebCore::CanvasRenderingContext2D::setFont):
      
      LayoutTests:
      
      Unskipped tests that will now pass, removed wrong expectations
      and updated test case which was fixed by the W3C.
      
      * canvas/philip/tests/2d.text.font.parse.size.percentage.default.html:
      This test case was fixed on W3C upstream:
      https://www.w3.org/Bugs/Public/show_bug.cgi?id=18522
      * fast/canvas/canvas-font-ex-units-crash-expected.txt:
      * fast/canvas/script-tests/canvas-font-ex-units-crash.js:
      * platform/chromium/TestExpectations:
      * platform/chromium/canvas/philip/tests/2d.text.font.parse.size.percentage-expected.txt: Removed.
      * platform/chromium/canvas/philip/tests/2d.text.font.parse.size.percentage.default-expected.txt: Removed.
      * platform/efl/Skipped:
      * platform/gtk/TestExpectations:
      * platform/mac/TestExpectations:
      * platform/mac/canvas/philip/tests/2d.text.font.parse.size.percentage-expected.txt: Removed.
      * platform/mac/canvas/philip/tests/2d.text.font.parse.size.percentage.default-expected.txt: Removed.
      * platform/qt/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125663 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      74d3b69c
    • ossy@webkit.org's avatar
      [Qt] Unreviewd gardening. Readd removed expectations in r125658 with some modification. · 60d5aadf
      ossy@webkit.org authored
      Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-08-15
      
      * platform/qt/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt: Added.
      * platform/qt/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125662 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      60d5aadf
    • pfeldman@chromium.org's avatar
      Web Inspector: split standalone test runner, test scanner and test stub. · 100f5cb5
      pfeldman@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94001
      
      Reviewed by Vsevolod Vlasov.
      
      Source/WebCore:
      
      This change starts sending loacCompleted message to the embedder.
      
      * inspector/front-end/InspectorFrontendAPI.js:
      (InspectorFrontendAPI.loadCompleted):
      * inspector/front-end/test-runner.html: Added.
      
      LayoutTests:
      
      This change allows opening a) test runner, b) layout tests and c) inspector front-end off different
      hosts. It is one more step towards extension-driven runner.
      
      * http/tests/inspector/inspector-test.js:
      * http/tests/inspector/resources/test-runner.html: Removed.
      * http/tests/inspector/resources/test-scanner.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125661 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      100f5cb5
    • shinyak@chromium.org's avatar
      [Refactoring] The debug version and release version of toHTMLSelectElement can... · 9327f7a6
      shinyak@chromium.org authored
      [Refactoring] The debug version and release version of toHTMLSelectElement can be merged without any penalty
      https://bugs.webkit.org/show_bug.cgi?id=94084
      
      Reviewed by Kent Tamura.
      
      We have two versions of toHTMLSelectElement. One has ASSERT() and the other one does not have ASSERT().
      We can merge them without any penalty.
      
      No new tests, no change in behavior.
      
      * html/HTMLSelectElement.cpp:
      * html/HTMLSelectElement.h:
      (WebCore::isHTMLSelectElement):
      (WebCore::toHTMLSelectElement):
      (WebCore):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125660 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9327f7a6
    • shinyak@chromium.org's avatar
      AuthorShadowDOM for meter element · 037f1cd4
      shinyak@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=91970
      
      Reviewed by Hajime Morita.
      
      Source/WebCore:
      
      We add support for AuthorShadowDOM for a meter element.
      
      According to the Shadow DOM spec, a meter element should behave like having a UserAgentShadowRoot and
      an element in UserAgentShadowRoot draws a real 'meter' bar. In this patch, we change the inner structure
      of a meter element so that we can distribute an element having RenderMeter to AuthorShadowDOM.
      
      Before this patch, a meter element has the following inner structure.
      
          <meter>--UserAgentShadowRoot -- -- -- -- -- -- -- -- -- -- AuthorShadowRoot
                             |
                             +-- MeterBarElement
                             |
                             +-- MeterValueElement
      
      After this patch, a meter element will have the following inner structure.
      
          <meter>--UserAgentShadowRoot -- -- -- -- -- -- -- -- -- -- AuthorShadowRoot
                             |
                             +-- MeterInnerElement
                                         |
                                         +-- MeterBarElement
                                         |
                                         +-- MeterValueElement
      
      However, if RenderTheme supports rendering meter, MeterInnerElement will not create a renderer
      unless an AuthorShadowDOM is attached to it so that we can keep the current rendering style.
      
      Tests: fast/dom/shadow/shadowdom-for-meter-dynamic.html
             fast/dom/shadow/shadowdom-for-meter-multiple.html
             fast/dom/shadow/shadowdom-for-meter-with-style.html
             fast/dom/shadow/shadowdom-for-meter-without-appearance.html
             fast/dom/shadow/shadowdom-for-meter-without-shadow-element.html
             fast/dom/shadow/shadowdom-for-meter.html
      
      * css/html.css:
      (meter): Changed the display type. inline-box is not supported WebKit. inline-block is true.
      (meter::-webkit-meter-inner-element):
      * html/HTMLMeterElement.cpp:
      (WebCore::HTMLMeterElement::HTMLMeterElement):
      (WebCore::HTMLMeterElement::createRenderer):
      (WebCore):
      (WebCore::HTMLMeterElement::attach): Added didElementStateChange.
      (WebCore::HTMLMeterElement::didElementStateChange):
      (WebCore::HTMLMeterElement::willAddAuthorShadowRoot):
      (WebCore::HTMLMeterElement::renderMeter):
      (WebCore::HTMLMeterElement::createShadowSubtree):
      * html/HTMLMeterElement.h:
      (WebCore):
      (WebCore::HTMLMeterElement::hasAuthorShadowRoot):
      (HTMLMeterElement):
      (WebCore::isHTMLMeterElement):
      (WebCore::toHTMLMeterElement):
      * html/shadow/MeterShadowElement.cpp:
      (WebCore::MeterShadowElement::meterElement):
      (WebCore::MeterShadowElement::rendererIsNeeded):
      (WebCore):
      (WebCore::MeterInnerElement::MeterInnerElement): We introduce a new element having RenderMeter
      so that we can distribute an element having RenderMeter to AuthorShadowDOM.
      (WebCore::MeterInnerElement::rendererIsNeeded): Different from a progress element, meter element will not be
      rendered using a theme. So we don't need to check the style appearance.
      (WebCore::MeterInnerElement::createRenderer):
      (WebCore::MeterInnerElement::shadowPseudoId):
      * html/shadow/MeterShadowElement.h:
      (WebCore):
      (MeterInnerElement):
      (WebCore::MeterInnerElement::create):
      * rendering/RenderMeter.cpp:
      (WebCore::RenderMeter::RenderMeter):
      (WebCore::RenderMeter::meterElement):
      (WebCore):
      (WebCore::RenderMeter::valueRatio):
      * rendering/RenderMeter.h:
      (RenderMeter):
      * rendering/RenderThemeMac.mm:
      (WebCore::RenderThemeMac::levelIndicatorFor):
      
      LayoutTests:
      
      Contains the following tests:
        (1) meter element with AuthorShadowDOM
        (2) meter element with multiple AuthorShadowDOM with a shadow element
        (3) meter element with multiple AuthorShadowDOM without a shadow element
        (4) meter element with AuthorShadowDOM with dynamic value update
        (5) meter element with AuthorShadowDOM with style
        (6) meter element with AuthorShadowDOM with -webkit-appearance: none
      
      * fast/dom/HTMLMeterElement/meter-clone-expected.txt:
      * fast/dom/HTMLMeterElement/meter-clone.html:
      * fast/dom/HTMLMeterElement/meter-element-markup-expected.txt:
      * fast/dom/shadow/resources/replaced-element-styles.css:
      (.meter-like):
      (.meter-inner-element-like):
      * fast/dom/shadow/shadowdom-for-meter-dynamic-expected.html: Added.
      * fast/dom/shadow/shadowdom-for-meter-dynamic.html: Added.
      * fast/dom/shadow/shadowdom-for-meter-expected.html: Added.
      * fast/dom/shadow/shadowdom-for-meter-multiple-expected.html: Added.
      * fast/dom/shadow/shadowdom-for-meter-multiple.html: Added.
      * fast/dom/shadow/shadowdom-for-meter-with-style-expected.html: Added.
      * fast/dom/shadow/shadowdom-for-meter-with-style.html: Added.
      * fast/dom/shadow/shadowdom-for-meter-without-appearance-expected.html: Added.
      * fast/dom/shadow/shadowdom-for-meter-without-appearance.html: Added.
      * fast/dom/shadow/shadowdom-for-meter-without-shadow-element-expected.html: Added.
      * fast/dom/shadow/shadowdom-for-meter-without-shadow-element.html: Added.
      * fast/dom/shadow/shadowdom-for-meter.html: Added.
      * platform/chromium-win/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt:
      * platform/chromium-win/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.txt:
      * platform/chromium-win/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
      * platform/chromium-win/fast/dom/HTMLMeterElement/meter-element-expected.txt:
      * platform/chromium-win/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt:
      * platform/chromium-win/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
      * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
      * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-expected.txt:
      * platform/chromium-win/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt:
      * platform/mac/TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125659 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      037f1cd4
    • kkristof@inf.u-szeged.hu's avatar
      [Qt] Unreviwed gardening. Skip failing tests and remove obsolete test expectations. · 37371f7a
      kkristof@inf.u-szeged.hu authored
      https://bugs.webkit.org/show_bug.cgi?id=94076
      
      Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-08-15
      
      * platform/qt/Skipped: skip fast/events/autoscroll-in-textarea.html.
      * platform/qt/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt: Removed after r125615.
      * platform/qt/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt: Removed after r125615.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125658 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      37371f7a
    • zandobersek@gmail.com's avatar
      Unreviewed GTK gardening. · 10686824
      zandobersek@gmail.com authored
      Adding image failure expectation for fast/overflow/line-clamp-and-columns.html,
      the reftest is failing since it was introduced in r125635.
      
      Skipping media/video-controls-fullscreen-volume.html for the moment after
      it's been failing since introduced in r125590, the failure is probably expected
      and will be marked as WONTFIX when confirmed.
      
      Marking fast/js/random-array-gc-stress.html as a flaky crasher. The crashing
      occurs due to parallel GC being enabled.
      
      * platform/gtk/TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125657 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      10686824
    • abarth@webkit.org's avatar
      [Chromium] fast/dom/Window/dom-access-from-closure-window.html is flaky on Linux · 5cc9865d
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94060
      
      Reviewed by Kentaro Hara.
      
      Source/WebCore:
      
      Previously, the V8 garbage collector might have collected the Document
      wrapper before the DOMWindow wrapper because we overwrite the
      "document" property of the DOMWindow during navigation.
      
      This patch adds a hidden document property on the global object to
      ensure that the Document wrapper lives at least as long as the
      DOMWindow wrapper, ensuring that DOMWindows that we obtain from V8
      always have non-null Document objects.
      
      The JavaScriptCore bindings already have this behavior.
      
      Test: fast/dom/Window/dom-access-from-closure-window-with-gc.html
      
      * bindings/v8/V8DOMWindowShell.cpp:
      (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
      * bindings/v8/V8HiddenPropertyName.h:
      (WebCore):
      
      LayoutTests:
      
      Ensure that collecting garbage doesn't change the behavior of this test
      (compared with dom-access-from-closure-window.html).
      
      * fast/dom/Window/dom-access-from-closure-window-with-gc-expected.txt: Added.
      * fast/dom/Window/dom-access-from-closure-window-with-gc.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125656 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5cc9865d
    • yutak@chromium.org's avatar
      [Chromium] Unreviewed. Add one more flaky test to test expectations. · b993ba1e
      yutak@chromium.org authored
      * platform/chromium/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125655 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b993ba1e
    • caseq@chromium.org's avatar
      Web Inspector: Calling getEventListeners() on element with malformed... · 93ef2805
      caseq@chromium.org authored
      Web Inspector: Calling getEventListeners() on element with malformed javascript event listeners crashes
      https://bugs.webkit.org/show_bug.cgi?id=93937
      
      Reviewed by Pavel Feldman.
      
      Source/WebCore:
      
      - check listener function to be non-null (happens upon an exception while compiling attribute listeners)
      
      * bindings/js/JSInjectedScriptHostCustom.cpp:
      (WebCore::getJSListenerFunctions):
      * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
      (WebCore::getJSListenerFunctions):
      
      LayoutTests:
      
      - added test for crash on invalid syntax in an attribute JS listener;
      - added custom expectation for chrome due to JS error logged to console by JSC while compiling attribute listener;
      
      * inspector/console/command-line-api-getEventListeners-expected.txt:
      * inspector/console/command-line-api-getEventListeners.html:
      * platform/chromium/inspector/console/command-line-api-getEventListeners-expected.txt: Copied from LayoutTests/inspector/console/command-line-api-getEventListeners-expected.txt.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125654 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      93ef2805
    • commit-queue@webkit.org's avatar
      [EFL] Update expectations for canvas/philip tests that require space collapsing · 989cd127
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94072
      
      Unreviewed EFL gardening.
      
      Move canvas/philip tests that require space collapsing
      from Skipped file to TestExpectations and indicate
      that the tests are outdated with corresponding bug
      number.
      
      Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-15
      
      * platform/efl/Skipped:
      * platform/efl/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125653 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      989cd127
    • yutak@chromium.org's avatar
      [Chromium] Unreviewed test expectations update. Tests named dfg-*array.html are · 617185a9
      yutak@chromium.org authored
      known to be slow on debug bots.
      
      * platform/chromium/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125652 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      617185a9
    • rniwa@webkit.org's avatar
      Build fix after r125516. Revert the erroneous rename since we need to keep exposing · f2364291
      rniwa@webkit.org authored
      layoutTestController in Chromium port as explained r124785.
      
      * DumpRenderTree/chromium/TestShell.cpp:
      (TestShell::bindJSObjectsToWindow):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125651 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f2364291
    • commit-queue@webkit.org's avatar
      Web Inspector: CodeMirrorTextEditor doesn't clear execution line · fe931c4e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94069
      
      Patch by Jan Keromnes <janx@linux.com> on 2012-08-14
      Reviewed by Pavel Feldman.
      
      Make CodeMirrorTextEditor use line handles instead of numbers, remove
      typeof == "number" checks.
      
      * inspector/front-end/CodeMirrorTextEditor.js:
      (WebInspector.CodeMirrorTextEditor.prototype.clearExecutionLine):
      (WebInspector.CodeMirrorTextEditor.prototype.highlightLine):
      (WebInspector.CodeMirrorTextEditor.prototype.clearLineHighlight):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125650 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fe931c4e
  2. 14 Aug, 2012 1 commit