1. 08 Oct, 2011 23 commits
    • commit-queue@webkit.org's avatar
      JSVALUE32_64 DFG JIT - GetLocal should produce a cell result for Array predictions · 2839ad3c
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69699
      
      Patch by Yuqiang Xian <yuqiang.xian@intel.com> on 2011-10-08
      Reviewed by Filip Pizlo.
      
      It should match SetLocal where only payload is stored for array predictions.
      
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97014 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2839ad3c
    • commit-queue@webkit.org's avatar
      JSVALUE32_64 DFG JIT - Bug fixes for Branch and LogicalNot · 7474dfd7
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69702
      
      Patch by Yuqiang Xian <yuqiang.xian@intel.com> on 2011-10-08
      Reviewed by Filip Pizlo.
      
      There are some errors in generating code for Branch and LogicalNot,
      when the operand is predicted as ObjectOrOther.
      
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
      (JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97013 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7474dfd7
    • mrobinson@webkit.org's avatar
      [GTK] Implement drag and drop support in WebKit2 · 3a1633fa
      mrobinson@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=63706
      
      Reviewed by Philippe Normand.
      
      Source/WebCore:
      
      * platform/DragData.h:
      * platform/gtk/DataObjectGtk.cpp:
      (WebCore::DataObjectGtk::text): Mark as const.
      (WebCore::DataObjectGtk::markup): Ditto.
      (WebCore::DataObjectGtk::urlLabel): Ditto.
      * platform/gtk/DataObjectGtk.h: Remove unused member
      m_dragContext.
      (WebCore::DataObjectGtk::url): Mark as const.
      (WebCore::DataObjectGtk::uriList): Ditto.
      (WebCore::DataObjectGtk::filenames): Ditto.
      (WebCore::DataObjectGtk::image): Ditto.
      (WebCore::DataObjectGtk::hasText): Ditto.
      (WebCore::DataObjectGtk::hasMarkup): Ditto.
      (WebCore::DataObjectGtk::hasURIList): Ditto.
      (WebCore::DataObjectGtk::hasURL): Ditto.
      (WebCore::DataObjectGtk::hasFilenames): Ditto.
      (WebCore::DataObjectGtk::hasImage): Ditto.
      * platform/gtk/DragIcon.cpp: Added. A helper which takes care of
      creating a transparent drag window for drags.
      * platform/gtk/DragIcon.h: Added.
      
      Source/WebKit2:
      
      * GNUmakefile.am: Add new files to compilation.
      * Shared/gtk/ArgumentCodersGtk.cpp: Added.
      (CoreIPC::encodeImage): Encode a GdkPixbuf.
      (CoreIPC::decodeImage): Decode a GdkPixbuf.
      (CoreIPC::encodeDataObject): Encode a DataObjectGtk.
      (CoreIPC::decodeDataObject): Decode a DataObjectGtk.
      (CoreIPC::::encode): Encode DragData.
      (CoreIPC::::decode): Decode DragData.
      * Shared/gtk/ArgumentCodersGtk.h:
      * UIProcess/API/gtk/PageClientImpl.cpp:
      (WebKit::PageClientImpl::startDrag):
      * UIProcess/API/gtk/PageClientImpl.h:
      * UIProcess/API/gtk/WebKitWebViewBase.cpp:
      (webkit_web_view_base_init): Set the view as a potential drop destination.
      (webkitWebViewBaseDragDataGet): Added, delegate to GtkDragAndDropHelper.
      (webkitWebViewBaseDragEnd): Ditto.
      (webkitWebViewBaseDragDataReceived): Ditto.
      (webkitWebViewBaseDragEnter): Ditto.
      (webkitWebViewBaseDragMotion): Ditto.
      (doDragLeaveLater): Ditto.
      (webkitWebViewBaseDragLeave): Ditto.
      (webkitWebViewBaseDragDrop): Ditto.
      (webkit_web_view_base_class_init): Override GtkWidget drag and drop methods.
      (webkitWebViewBaseStartDrag): Calls gtk_drag_begin() to start a drag operation.
      * UIProcess/API/gtk/WebKitWebViewBasePrivate.h: Add webkitWebViewBaseStartDrag().
      * UIProcess/PageClient.h: Add startDrag().
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::performDragControllerAction): Share the Qt version.
      * UIProcess/WebPageProxy.h:
      * UIProcess/WebPageProxy.messages.in:
      * WebProcess/WebCoreSupport/WebDragClient.cpp:
      * WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp: Added.
      * WebProcess/WebPage/WebPage.cpp: Add drag support for GTK+.
      * WebProcess/WebPage/WebPage.h: Ditto.
      * WebProcess/WebPage/WebPage.messages.in: Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97012 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3a1633fa
    • qi.2.zhang@nokia.com's avatar
      [WK2] Update Skipped file · e595178b
      qi.2.zhang@nokia.com authored
      https://bugs.webkit.org/show_bug.cgi?id=69650
      
      Reviewed by Andreas Kling.
      
      Unskip passed ApplicationCache test cases.
      
      * platform/wk2/Skipped:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97011 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e595178b
    • commit-queue@webkit.org's avatar
      [Qt] [WK2] Wrong handling of visibility in QTouchWebPage · 149d5886
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69670
      
      Patch by Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com> on 2011-10-08
      Reviewed by Andreas Kling.
      
      Replace QTouchWebPage visibility handling by Show/Hide events with use of
      QSGItem::visibleChanged signal.
      
      * UIProcess/API/qt/qtouchwebpage.cpp:
      (QTouchWebPage::QTouchWebPage):
      (QTouchWebPage::event):
      (QTouchWebPage::onVisibleChanged):
      * UIProcess/API/qt/qtouchwebpage.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97010 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      149d5886
    • inferno@chromium.org's avatar
      Add support for ADDRESS_SANITIZER in RenderArena · 05c9dd5a
      inferno@chromium.org authored
      allocate, free calls.
      https://bugs.webkit.org/show_bug.cgi?id=69636
      
      Reviewed by Darin Adler.
      
      Use malloc, free directly without using the debug header. Otherwise,
      we won't be able to detect out of bounds access in debug header.
      
      * rendering/RenderArena.cpp:
      (WebCore::RenderArena::allocate):
      (WebCore::RenderArena::free):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97009 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      05c9dd5a
    • ossy@webkit.org's avatar
      [Qt] Unreviewed weekend gardening. · d2350b58
      ossy@webkit.org authored
      * platform/qt-4.8/editing/deleting/merge-whitespace-pre-expected.txt: Updated after 96886.
      * platform/qt/Skipped: Skip http/tests/security/xss-DENIED-xsl-document-securityOrigin.xml - http://webkit.org/b/69700
      * platform/qt/fast/css/text-transform-select-expected.png: Added after r96987.
      * platform/qt/fast/css/text-transform-select-expected.txt: Added after r96987.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97008 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d2350b58
    • tkent@chromium.org's avatar
      Remove some static functions of HTMLSelectElement · 4bdb862d
      tkent@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69621
      
      Reviewed by Darin Adler.
      
      Merge a static function and the corresponding non-static member function
      into one function if there are no other callers of the static function.
      
      No new tests, just a refactoring.
      
      * html/HTMLFormControlElement.h:
      Make formControlName() protected because it is called from
      HTMLSelectElement.
      * html/HTMLSelectElement.cpp:
      (WebCore::HTMLSelectElement::parseMappedAttribute):
      Remove two argument of parseMultipleAttribute().
      (WebCore::HTMLSelectElement::selectAll):
      Merged the static function and the member function.
      (WebCore::HTMLSelectElement::dispatchFocusEvent): ditto.
      (WebCore::HTMLSelectElement::dispatchBlurEvent): ditto.
      (WebCore::HTMLSelectElement::saveFormControlState): ditto.
      (WebCore::HTMLSelectElement::restoreFormControlState):
      (WebCore::HTMLSelectElement::parseMultipleAttribute):
       - Make this non-static member function.
       - Use reattachIfAttached().
      (WebCore::HTMLSelectElement::appendFormData): Merged.
      (WebCore::HTMLSelectElement::reset): ditto.
      (WebCore::HTMLSelectElement::insertedIntoTree): ditto.
      (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): ditto.
      (WebCore::HTMLSelectElement::length): Merged with optionCount().
      * html/HTMLSelectElement.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97007 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4bdb862d
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r96996. · c7d21fd4
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/96996
      https://bugs.webkit.org/show_bug.cgi?id=69697
      
      It broke all tests on the Qt bot (Requested by Ossy_night on
      #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-10-08
      
      Source/JavaScriptCore:
      
      * API/JSCallbackFunction.cpp:
      (JSC::JSCallbackFunction::getCallDataVirtual):
      * API/JSCallbackFunction.h:
      * API/JSCallbackObject.h:
      * API/JSCallbackObjectFunctions.h:
      (JSC::::getCallDataVirtual):
      * API/JSObjectRef.cpp:
      (JSObjectIsFunction):
      (JSObjectCallAsFunction):
      * JavaScriptCore.exp:
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::privateExecute):
      * jit/JITStubs.cpp:
      (JSC::DEFINE_STUB_FUNCTION):
      * runtime/ArrayConstructor.cpp:
      (JSC::ArrayConstructor::getCallDataVirtual):
      * runtime/ArrayConstructor.h:
      * runtime/BooleanConstructor.cpp:
      (JSC::BooleanConstructor::getCallDataVirtual):
      * runtime/BooleanConstructor.h:
      * runtime/DateConstructor.cpp:
      (JSC::DateConstructor::getCallDataVirtual):
      * runtime/DateConstructor.h:
      * runtime/Error.cpp:
      (JSC::StrictModeTypeErrorFunction::StrictModeTypeErrorFunction):
      (JSC::StrictModeTypeErrorFunction::create):
      (JSC::StrictModeTypeErrorFunction::constructThrowTypeError):
      (JSC::StrictModeTypeErrorFunction::getConstructData):
      (JSC::StrictModeTypeErrorFunction::callThrowTypeError):
      (JSC::StrictModeTypeErrorFunction::getCallDataVirtual):
      (JSC::StrictModeTypeErrorFunction::getCallData):
      (JSC::StrictModeTypeErrorFunction::createStructure):
      (JSC::createTypeErrorFunction):
      * runtime/Error.h:
      * runtime/ErrorConstructor.cpp:
      (JSC::ErrorConstructor::getCallDataVirtual):
      * runtime/ErrorConstructor.h:
      * runtime/FunctionConstructor.cpp:
      (JSC::FunctionConstructor::getCallDataVirtual):
      * runtime/FunctionConstructor.h:
      * runtime/FunctionPrototype.cpp:
      (JSC::FunctionPrototype::getCallDataVirtual):
      * runtime/FunctionPrototype.h:
      * runtime/InternalFunction.cpp:
      (JSC::InternalFunction::finishCreation):
      * runtime/InternalFunction.h:
      * runtime/JSCell.cpp:
      (JSC::JSCell::getCallDataVirtual):
      * runtime/JSCell.h:
      (JSC::getCallData):
      * runtime/JSFunction.cpp:
      (JSC::JSFunction::getCallDataVirtual):
      * runtime/JSFunction.h:
      * runtime/JSGlobalObject.cpp:
      (JSC::JSGlobalObject::reset):
      (JSC::JSGlobalObject::visitChildren):
      * runtime/JSGlobalObject.h:
      * runtime/JSONObject.cpp:
      (JSC::Stringifier::Stringifier):
      (JSC::Stringifier::toJSON):
      (JSC::Stringifier::appendStringifiedValue):
      * runtime/JSObject.cpp:
      (JSC::JSObject::put):
      * runtime/JSObject.h:
      * runtime/NativeErrorConstructor.cpp:
      (JSC::NativeErrorConstructor::getCallDataVirtual):
      * runtime/NativeErrorConstructor.h:
      * runtime/NumberConstructor.cpp:
      (JSC::NumberConstructor::getCallDataVirtual):
      * runtime/NumberConstructor.h:
      * runtime/ObjectConstructor.cpp:
      (JSC::ObjectConstructor::getCallDataVirtual):
      * runtime/ObjectConstructor.h:
      * runtime/Operations.cpp:
      (JSC::jsTypeStringForValue):
      (JSC::jsIsObjectType):
      (JSC::jsIsFunctionType):
      * runtime/PropertySlot.cpp:
      (JSC::PropertySlot::functionGetter):
      * runtime/RegExpConstructor.cpp:
      (JSC::RegExpConstructor::getCallDataVirtual):
      * runtime/RegExpConstructor.h:
      * runtime/StringConstructor.cpp:
      (JSC::StringConstructor::getCallDataVirtual):
      * runtime/StringConstructor.h:
      * runtime/Structure.h:
      
      Source/JavaScriptGlue:
      
      * JSValueWrapper.cpp:
      (JSValueWrapper::JSObjectCallFunction):
      * UserObjectImp.cpp:
      (UserObjectImp::getCallDataVirtual):
      * UserObjectImp.h:
      
      Source/WebCore:
      
      * WebCore.exp.in:
      * bindings/js/JSCallbackData.cpp:
      (WebCore::JSCallbackData::invokeCallback):
      * bindings/js/JSCustomXPathNSResolver.cpp:
      (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
      * bindings/js/JSErrorHandler.cpp:
      (WebCore::JSErrorHandler::handleEvent):
      * bindings/js/JSEventListener.cpp:
      (WebCore::JSEventListener::handleEvent):
      * bindings/js/JSHTMLAllCollectionCustom.cpp:
      (WebCore::JSHTMLAllCollection::getCallDataVirtual):
      * bindings/js/JSHTMLAppletElementCustom.cpp:
      (WebCore::JSHTMLAppletElement::getCallDataVirtual):
      * bindings/js/JSHTMLEmbedElementCustom.cpp:
      (WebCore::JSHTMLEmbedElement::getCallDataVirtual):
      * bindings/js/JSHTMLObjectElementCustom.cpp:
      (WebCore::JSHTMLObjectElement::getCallDataVirtual):
      * bindings/js/JSInjectedScriptHostCustom.cpp:
      (WebCore::JSInjectedScriptHost::evaluate):
      * bindings/js/JSPluginElementFunctions.cpp:
      (WebCore::runtimeObjectGetCallData):
      * bindings/scripts/CodeGeneratorJS.pm:
      (GenerateHeader):
      * bridge/objc/objc_runtime.h:
      * bridge/objc/objc_runtime.mm:
      (JSC::Bindings::ObjcFallbackObjectImp::getCallDataVirtual):
      * bridge/qt/qt_runtime.cpp:
      (JSC::Bindings::QtRuntimeMetaMethod::getCallDataVirtual):
      (JSC::Bindings::QtRuntimeConnectionMethod::call):
      (JSC::Bindings::QtRuntimeConnectionMethod::getCallDataVirtual):
      (JSC::Bindings::isJavaScriptFunction):
      * bridge/qt/qt_runtime.h:
      * bridge/runtime_method.cpp:
      (JSC::RuntimeMethod::getCallDataVirtual):
      * bridge/runtime_method.h:
      * bridge/runtime_object.cpp:
      (JSC::Bindings::RuntimeObject::getCallDataVirtual):
      * bridge/runtime_object.h:
      
      Source/WebKit/mac:
      
      * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
      (WebKit::NetscapePluginInstanceProxy::invokeDefault):
      
      Source/WebKit2:
      
      * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
      (WebKit::JSNPMethod::getCallDataVirtual):
      * WebProcess/Plugins/Netscape/JSNPMethod.h:
      * WebProcess/Plugins/Netscape/JSNPObject.cpp:
      (WebKit::JSNPObject::getCallDataVirtual):
      * WebProcess/Plugins/Netscape/JSNPObject.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97006 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c7d21fd4
    • fpizlo@apple.com's avatar
      DFG JIT - only Array predictions can result in unboxed cells in register file · ec9870f9
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=69695
      
      Patch by Yuqiang Xian <yuqiang.xian@intel.com> on 2011-10-08
      Reviewed by Filip Pizlo.
      
      In current DFG JIT, only array predictions can result in unboxed cells
      in register file, not for the other cell predictions.
      
      * dfg/DFGSpeculativeJIT.h:
      (JSC::DFG::ValueSource::forPrediction):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97005 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ec9870f9
    • rniwa@webkit.org's avatar
      Snow Leopard build fix after r96976. Apparently we just need a full rebuild. · 25887156
      rniwa@webkit.org authored
      * config.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97004 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      25887156
    • commit-queue@webkit.org's avatar
      bug fixes for ArrayPush and ArrayPop in 32_64 DFG JIT · 4accce46
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69696
      
      Patch by Yuqiang Xian <yuqiang.xian@intel.com> on 2011-10-07
      Reviewed by Filip Pizlo.
      
      On 32-bit, we should use TimesEight (8) instead of ScalePtr (4)
      to compute the address of a JS array element.
      
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97003 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4accce46
    • mhahnenberg@apple.com's avatar
      Add static version of JSCell::deleteProperty · 914c3eeb
      mhahnenberg@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=69659
      
      Reviewed by Geoffrey Garen.
      
      Source/JavaScriptCore:
      
      Added static version of both versions of put to all classes that
      override them and changed the virtual versions to call the static
      versions.  This is the first step in de-virtualizing JSCell::deleteProperty.
      
      * API/JSCallbackObject.h:
      * API/JSCallbackObjectFunctions.h:
      (JSC::::deleteProperty):
      * debugger/DebuggerActivation.cpp:
      (JSC::DebuggerActivation::deleteProperty):
      * debugger/DebuggerActivation.h:
      * runtime/Arguments.cpp:
      (JSC::Arguments::deleteProperty):
      * runtime/Arguments.h:
      * runtime/JSActivation.cpp:
      (JSC::JSActivation::deleteProperty):
      * runtime/JSActivation.h:
      * runtime/JSArray.cpp:
      (JSC::JSArray::deleteProperty):
      * runtime/JSArray.h:
      * runtime/JSCell.cpp:
      (JSC::JSCell::deleteProperty):
      * runtime/JSCell.h:
      * runtime/JSFunction.cpp:
      (JSC::JSFunction::deleteProperty):
      * runtime/JSFunction.h:
      * runtime/JSNotAnObject.cpp:
      (JSC::JSNotAnObject::deleteProperty):
      * runtime/JSNotAnObject.h:
      * runtime/JSObject.cpp:
      (JSC::JSObject::deleteProperty):
      * runtime/JSObject.h:
      * runtime/JSVariableObject.cpp:
      (JSC::JSVariableObject::deleteProperty):
      * runtime/JSVariableObject.h:
      * runtime/RegExpMatchesArray.h:
      (JSC::RegExpMatchesArray::deleteProperty):
      * runtime/StrictEvalActivation.cpp:
      (JSC::StrictEvalActivation::deleteProperty):
      * runtime/StrictEvalActivation.h:
      * runtime/StringObject.cpp:
      (JSC::StringObject::deleteProperty):
      * runtime/StringObject.h:
      
      Source/WebCore:
      
      No new tests.
      
      Added static version of both versions of put to all classes that
      override them and changed the virtual versions to call the static
      versions.  This is the first step in de-virtualizing JSCell::deleteProperty.
      
      * bridge/objc/objc_runtime.h:
      * bridge/objc/objc_runtime.mm:
      (JSC::Bindings::ObjcFallbackObjectImp::deleteProperty):
      * bridge/runtime_array.cpp:
      (JSC::RuntimeArray::deleteProperty):
      * bridge/runtime_array.h:
      * bridge/runtime_object.cpp:
      (JSC::Bindings::RuntimeObject::deleteProperty):
      * bridge/runtime_object.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97002 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      914c3eeb
    • rniwa@webkit.org's avatar
      [JSC]Two tests fails after r95489 & r95488 · 82cb7a18
      rniwa@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=68428
      
      Move V8-specific results to Chromium and put JSC result in cross-platform directory.
      Also unskip the tests on Mac.
      
      * http/tests/security/document-all-expected.txt:
      * http/tests/security/window-named-proto-expected.txt:
      * platform/chromium/http/tests/security/document-all-expected.txt: Copied from
      LayoutTests/http/tests/security/document-all-expected.txt.
      * platform/chromium/http/tests/security/window-named-proto-expected.txt: Copied from
      LayoutTests/http/tests/security/window-named-proto-expected.txt.
      * platform/gtk/http/tests/security/document-all-expected.txt: Removed.
      * platform/gtk/http/tests/security/window-named-proto-expected.txt: Removed.
      * platform/mac/Skipped:
      * platform/qt/http/tests/security/document-all-expected.txt: Removed.
      * platform/qt/http/tests/security/window-named-proto-expected.txt: Removed.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97001 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      82cb7a18
    • jeffm@apple.com's avatar
      Add WKPageContextMenuClient callback when context menu is dismissed · 82b5697d
      jeffm@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=69553
      
      Add contextMenuDismissed callback to WKPageContextMenuClient, and bump the API
      version of this client to 1 so we continue to work with old clients.
      
      * Shared/APIClientTraits.cpp: Added array of interface sizes for WKPageContextMenuClient.
      * Shared/APIClientTraits.h: Added APIClientTraits for WKPageContextMenuClient.
      
      * UIProcess/API/C/WKPage.h: Added contextMenuDismissed callback to WKPageContextMenuClient and bumped kWKPageContextMenuClientCurrentVersion.
      
      * UIProcess/WebPageContextMenuClient.cpp:
      (WebKit::WebPageContextMenuClient::contextMenuDismissed): Added.
      
      * UIProcess/WebPageContextMenuClient.h: Added WebPageContextMenuClient::contextMenuDismissed().
      
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::internalShowContextMenu): Notify client when context menu is dismissed.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97000 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      82b5697d
    • jschuh@chromium.org's avatar
      Make isXMLMIMEType regex use TLS · 42f897d0
      jschuh@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69665
      
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      Test: fast/workers/worker-multi-startup.html
      
      * dom/DOMImplementation.cpp:
      (WebCore::XMLMIMETypeRegExp::XMLMIMETypeRegExp):
      (WebCore::XMLMIMETypeRegExp::~XMLMIMETypeRegExp):
      (WebCore::XMLMIMETypeRegExp::isXMLMIMEType):
      (WebCore::DOMImplementation::isXMLMIMEType):
      * dom/DOMImplementation.h:
      * platform/ThreadGlobalData.cpp:
      (WebCore::ThreadGlobalData::ThreadGlobalData):
      (WebCore::ThreadGlobalData::destroy):
      * platform/ThreadGlobalData.h:
      (WebCore::ThreadGlobalData::xmlTypeRegExp):
      
      LayoutTests:
      
      * fast/workers/worker-multi-startup-expected.txt: Added.
      * fast/workers/worker-multi-startup.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96999 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      42f897d0
    • simonjam@chromium.org's avatar
      [Chromium] Allow failure of another Mac Skia test. · 9315327e
      simonjam@chromium.org authored
      Unreviewed.
      
      * platform/chromium/test_expectations.txt: Added first-of-type-pseudo-class.html.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96998 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9315327e
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r96847. · 633de67a
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/96847
      https://bugs.webkit.org/show_bug.cgi?id=69684
      
      may have caused memory regression on win chromium (Requested
      by simonjam on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-10-07
      
      * platform/graphics/chromium/FontChromiumWin.cpp:
      (WebCore::Font::drawGlyphs):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96997 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      633de67a
    • mhahnenberg@apple.com's avatar
      Remove getCallDataVirtual methods · 597be029
      mhahnenberg@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=69186
      
      Reviewed by Geoffrey Garen.
      
      Source/JavaScriptCore: 
      
      Removed all getCallDataVirtual methods and replaced their call sites 
      with an explicit lookup in the MethodTable.
      
      * API/JSCallbackFunction.cpp:
      * API/JSCallbackFunction.h:
      * API/JSCallbackObject.h:
      * API/JSCallbackObjectFunctions.h:
      * API/JSObjectRef.cpp:
      (JSObjectIsFunction):
      (JSObjectCallAsFunction):
      * JavaScriptCore.exp:
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::privateExecute):
      * jit/JITStubs.cpp:
      (JSC::DEFINE_STUB_FUNCTION):
      * runtime/ArrayConstructor.cpp:
      * runtime/ArrayConstructor.h:
      * runtime/BooleanConstructor.cpp:
      * runtime/BooleanConstructor.h:
      * runtime/DateConstructor.cpp:
      * runtime/DateConstructor.h:
      * runtime/Error.cpp:
      (JSC::createTypeErrorFunction):
      
      Moved StrictModeTypeErrorFunction to Error.h in order to be able to include 
      the class definition in JSGlobalObject.cpp.
      * runtime/Error.h:
      (JSC::StrictModeTypeErrorFunction::StrictModeTypeErrorFunction):
      (JSC::StrictModeTypeErrorFunction::create):
      (JSC::StrictModeTypeErrorFunction::constructThrowTypeError):
      (JSC::StrictModeTypeErrorFunction::getConstructData):
      (JSC::StrictModeTypeErrorFunction::callThrowTypeError):
      (JSC::StrictModeTypeErrorFunction::getCallData):
      (JSC::StrictModeTypeErrorFunction::createStructure):
      * runtime/ErrorConstructor.cpp:
      * runtime/ErrorConstructor.h:
      * runtime/FunctionConstructor.cpp:
      * runtime/FunctionConstructor.h:
      * runtime/FunctionPrototype.cpp:
      * runtime/FunctionPrototype.h:
      
      To allow subclasses of InternalFunction (e.g. QtRuntimeMethod) to not have 
      to declare their own ClassInfo if they don't override getCallData, provided 
      an implementation that calls ASSERT_NOT_REACHED if called, providing roughly the same 
      functionality as of the pure virtual method InternalFunction used to have.
      Also made this new implementation protected rather than private for the same reason.
      Also added an ASSERT in InternalFunction::finishCreation to make sure that whatever 
      object is being created provides their own implementation of getCallData.  This 
      just makes execution fail earlier in a place where the source of the error is 
      easy to trace.  These ASSERTs are better than putting a null in the MethodTable because
      they appear much more intentional to anybody who fails to provide their own 
      implementation or who tries to explicitly call InternalFunction::getCallData.
      * runtime/InternalFunction.cpp:
      (JSC::InternalFunction::finishCreation):
      (JSC::InternalFunction::getCallData):
      * runtime/InternalFunction.h:
      * runtime/JSCell.cpp:
      * runtime/JSCell.h:
      * runtime/JSFunction.cpp:
      * runtime/JSFunction.h:
      
      Added a global structure to JSGlobalObject for StrictModeTypeErrorFunction to enable 
      it to be reused rather than creating a new Structure every time we instantiate it.
      * runtime/JSGlobalObject.cpp:
      (JSC::JSGlobalObject::reset):
      (JSC::JSGlobalObject::visitChildren):
      * runtime/JSGlobalObject.h:
      (JSC::JSGlobalObject::strictModeTypeErrorFunctionStructure):
      * runtime/JSONObject.cpp:
      (JSC::Stringifier::Stringifier):
      (JSC::Stringifier::toJSON):
      (JSC::Stringifier::appendStringifiedValue):
      * runtime/JSObject.cpp:
      (JSC::JSObject::put):
      * runtime/JSObject.h:
      (JSC::getCallData):
      * runtime/NativeErrorConstructor.cpp:
      * runtime/NativeErrorConstructor.h:
      * runtime/NumberConstructor.cpp:
      * runtime/NumberConstructor.h:
      * runtime/ObjectConstructor.cpp:
      * runtime/ObjectConstructor.h:
      * runtime/Operations.cpp:
      (JSC::jsTypeStringForValue):
      (JSC::jsIsObjectType):
      (JSC::jsIsFunctionType):
      * runtime/PropertySlot.cpp:
      (JSC::PropertySlot::functionGetter):
      * runtime/RegExpConstructor.cpp:
      * runtime/RegExpConstructor.h:
      * runtime/StringConstructor.cpp:
      * runtime/StringConstructor.h:
      * runtime/Structure.h:
      
      Source/JavaScriptGlue: 
      
      Removed all getCallDataVirtual methods and replaced their call sites 
      with an explicit lookup in the MethodTable.
      
      * JSValueWrapper.cpp:
      (JSValueWrapper::JSObjectCallFunction):
      * UserObjectImp.cpp:
      * UserObjectImp.h:
      
      Source/WebCore: 
      
      No new tests.
      
      Removed all getCallDataVirtual methods and replaced their call sites 
      with an explicit lookup in the MethodTable.
      
      * WebCore.exp.in:
      * bindings/js/JSCallbackData.cpp:
      (WebCore::JSCallbackData::invokeCallback):
      * bindings/js/JSCustomXPathNSResolver.cpp:
      (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
      * bindings/js/JSErrorHandler.cpp:
      (WebCore::JSErrorHandler::handleEvent):
      * bindings/js/JSEventListener.cpp:
      (WebCore::JSEventListener::handleEvent):
      * bindings/js/JSHTMLAllCollectionCustom.cpp:
      * bindings/js/JSHTMLAppletElementCustom.cpp:
      * bindings/js/JSHTMLEmbedElementCustom.cpp:
      * bindings/js/JSHTMLObjectElementCustom.cpp:
      * bindings/js/JSInjectedScriptHostCustom.cpp:
      (WebCore::JSInjectedScriptHost::evaluate):
      * bindings/js/JSPluginElementFunctions.cpp:
      (WebCore::runtimeObjectGetCallData):
      * bindings/scripts/CodeGeneratorJS.pm:
      (GenerateHeader):
      * bridge/objc/objc_runtime.h:
      * bridge/objc/objc_runtime.mm:
      * bridge/qt/qt_runtime.cpp:
      (JSC::Bindings::QtRuntimeConnectionMethod::call):
      (JSC::Bindings::isJavaScriptFunction):
      * bridge/qt/qt_runtime.h:
      (JSC::Bindings::QtRuntimeMetaMethod::createStructure):
      (JSC::Bindings::QtRuntimeConnectionMethod::createStructure):
      * bridge/runtime_method.cpp:
      * bridge/runtime_method.h:
      * bridge/runtime_object.cpp:
      * bridge/runtime_object.h:
      
      Source/WebKit/mac: 
      
      Removed all getCallDataVirtual methods and replaced their call sites 
      with an explicit lookup in the MethodTable.
      
      * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
      (WebKit::NetscapePluginInstanceProxy::invokeDefault):
      
      Source/WebKit2: 
      
      Removed all getCallDataVirtual methods and replaced their call sites 
      with an explicit lookup in the MethodTable.
      
      * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
      * WebProcess/Plugins/Netscape/JSNPMethod.h:
      * WebProcess/Plugins/Netscape/JSNPObject.cpp:
      * WebProcess/Plugins/Netscape/JSNPObject.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96996 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      597be029
    • oliver@apple.com's avatar
      Add missing break statement. · 381db9f5
      oliver@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96995 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      381db9f5
    • bfulgham@webkit.org's avatar
      [WinCairo] Unreviewed Skiplist update to get bot green. · 4915dc7b
      bfulgham@webkit.org authored
      * platform/wincairo/Skipped: Turn off a few more tests.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96994 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4915dc7b
    • oliver@apple.com's avatar
      Support some string intrinsics in the DFG JIT · 4b8cca37
      oliver@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=69678
      
      Reviewed by Gavin Barraclough.
      
      Add support for charAt and charCodeAt intrinsics in the DFG.
      
      * create_hash_table:
      * dfg/DFGByteCodeParser.cpp:
      (JSC::DFG::ByteCodeParser::handleIntrinsic):
      * dfg/DFGIntrinsic.h:
      * dfg/DFGNode.h:
      * dfg/DFGPropagator.cpp:
      (JSC::DFG::Propagator::propagateNodePredictions):
      (JSC::DFG::Propagator::performNodeCSE):
      * dfg/DFGSpeculativeJIT.cpp:
      (JSC::DFG::SpeculativeJIT::compileGetCharCodeAt):
      * dfg/DFGSpeculativeJIT.h:
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96993 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4b8cca37
    • mhahnenberg@apple.com's avatar
      Add static version of JSCell::put · 5e2b7127
      mhahnenberg@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=69382
      
      Reviewed by Geoffrey Garen.
      
      Source/JavaScriptCore:
      
      Added static version of both versions of put to all classes that
      override them and changed the virtual versions to call the static
      versions.
      
      * API/JSCallbackObject.h:
      * API/JSCallbackObjectFunctions.h:
      (JSC::::put):
      * JavaScriptCore.exp:
      * debugger/DebuggerActivation.cpp:
      (JSC::DebuggerActivation::put):
      * debugger/DebuggerActivation.h:
      * runtime/Arguments.cpp:
      (JSC::Arguments::put):
      * runtime/Arguments.h:
      * runtime/JSActivation.cpp:
      (JSC::JSActivation::put):
      * runtime/JSActivation.h:
      * runtime/JSArray.cpp:
      (JSC::JSArray::put):
      * runtime/JSArray.h:
      * runtime/JSByteArray.cpp:
      (JSC::JSByteArray::put):
      * runtime/JSByteArray.h:
      * runtime/JSCell.cpp:
      (JSC::JSCell::put):
      * runtime/JSCell.h:
      * runtime/JSFunction.cpp:
      (JSC::JSFunction::put):
      * runtime/JSFunction.h:
      * runtime/JSGlobalObject.cpp:
      (JSC::JSGlobalObject::put):
      * runtime/JSGlobalObject.h:
      * runtime/JSNotAnObject.cpp:
      (JSC::JSNotAnObject::put):
      * runtime/JSNotAnObject.h:
      * runtime/JSObject.cpp:
      (JSC::JSObject::put):
      * runtime/JSObject.h:
      * runtime/JSStaticScopeObject.cpp:
      (JSC::JSStaticScopeObject::put):
      * runtime/JSStaticScopeObject.h:
      * runtime/ObjectPrototype.cpp:
      (JSC::ObjectPrototype::put):
      * runtime/ObjectPrototype.h:
      * runtime/RegExpConstructor.cpp:
      (JSC::RegExpConstructor::put):
      * runtime/RegExpConstructor.h:
      * runtime/RegExpMatchesArray.h:
      (JSC::RegExpMatchesArray::put):
      * runtime/RegExpObject.cpp:
      (JSC::RegExpObject::put):
      * runtime/RegExpObject.h:
      * runtime/StringObject.cpp:
      (JSC::StringObject::put):
      * runtime/StringObject.h:
      
      Source/JavaScriptGlue:
      
      Added static version of both versions of put to all classes that
      override them and changed the virtual versions to call the static
      versions.
      
      * UserObjectImp.cpp:
      (UserObjectImp::put):
      * UserObjectImp.h:
      
      Source/WebCore:
      
      No new tests.
      
      Added static version of both versions of put to all classes that
      override them and changed the virtual versions to call the static
      versions.
      
      * bindings/scripts/CodeGeneratorJS.pm:
      (GenerateHeader):
      (GenerateImplementation):
      * bindings/scripts/test/JS/JSTestObj.cpp:
      (WebCore::JSTestObj::put):
      * bindings/scripts/test/JS/JSTestObj.h:
      * bridge/objc/objc_runtime.h:
      * bridge/objc/objc_runtime.mm:
      (JSC::Bindings::ObjcFallbackObjectImp::put):
      * bridge/runtime_array.cpp:
      (JSC::RuntimeArray::put):
      * bridge/runtime_array.h:
      * bridge/runtime_object.cpp:
      (JSC::Bindings::RuntimeObject::put):
      * bridge/runtime_object.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96992 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5e2b7127
  2. 07 Oct, 2011 17 commits
    • commit-queue@webkit.org's avatar
      https://bugs.webkit.org/show_bug.cgi?id=69471 · 75dc1490
      commit-queue@webkit.org authored
       We now wrap the window script NPObject which is requested by NPAPI plugins for
       scripting. The wrapped NPObject pointer maintains a weak reference to the
       window script NPObject and is cleared out when the window script object is destroyed.
       The NPObject wrapper is destroyed when the last outstanding reference is released.
      
       Reviewed by Nate Chapin.
      
       No tests added as there is no change in functionality.
      
      Patch by Anantanarayanan G Iyengar <ananta@chromium.org> on 2011-10-07
      
      * WebCore.gypi:
      * bindings/v8/NPObjectWrapper.cpp: Added.
      (WebCore::NPObjectWrapper::NPObjectWrapper):
      (WebCore::NPObjectWrapper::create):
      (WebCore::NPObjectWrapper::clear):
      (WebCore::NPObjectWrapper::getWrapper):
      (WebCore::NPObjectWrapper::getUnderlyingNPObject):
      (WebCore::NPObjectWrapper::getObjectForCall):
      (WebCore::NPObjectWrapper::NPAllocate):
      (WebCore::NPObjectWrapper::NPDeallocate):
      (WebCore::NPObjectWrapper::NPPInvalidate):
      (WebCore::NPObjectWrapper::NPHasMethod):
      (WebCore::NPObjectWrapper::NPInvoke):
      (WebCore::NPObjectWrapper::NPInvokeDefault):
      (WebCore::NPObjectWrapper::NPHasProperty):
      (WebCore::NPObjectWrapper::NPGetProperty):
      (WebCore::NPObjectWrapper::NPSetProperty):
      (WebCore::NPObjectWrapper::NPRemoveProperty):
      (WebCore::NPObjectWrapper::NPNEnumerate):
      (WebCore::NPObjectWrapper::NPNConstruct):
      (WebCore::NPObjectWrapper::NPInvokePrivate):
      * bindings/v8/NPObjectWrapper.h: Added.
      * bindings/v8/NPV8Object.cpp:
      (_NPN_EvaluateHelper):
      * bindings/v8/ScriptController.cpp:
      (WebCore::ScriptController::ScriptController):
      (WebCore::ScriptController::clearScriptObjects):
      (WebCore::ScriptController::windowScriptNPObject):
      * bindings/v8/ScriptController.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96991 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      75dc1490
    • commit-queue@webkit.org's avatar
      Webkit API for compositor · 1cdcb809
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69107
      
      Patch by Antoine Labour <piman@chromium.org> on 2011-10-07
      Reviewed by Darin Fisher.
      
      Source/WebCore:
      
      Covered by existing compositing tests.
      
      * platform/graphics/chromium/ContentLayerChromium.h:
      
      Source/WebKit/chromium:
      
      * WebKit.gyp:
      * public/WebContentLayer.h: Added.
      (WebKit::WebContentLayer::WebContentLayer):
      (WebKit::WebContentLayer::~WebContentLayer):
      (WebKit::WebContentLayer::operator=):
      * public/WebContentLayerClient.h: Added.
      (WebKit::WebContentLayerClient::~WebContentLayerClient):
      * public/WebLayer.h: Added.
      (WebKit::WebLayer::WebLayer):
      (WebKit::WebLayer::operator=):
      (WebKit::WebLayer::to):
      (WebKit::WebLayer::toConst):
      (WebKit::WebLayer::unwrap):
      (WebKit::WebLayer::constUnwrap):
      (WebKit::operator==):
      (WebKit::operator!=):
      * public/WebLayerClient.h: Added.
      (WebKit::WebLayerClient::~WebLayerClient):
      * public/WebLayerTreeView.h: Added.
      (WebKit::WebLayerTreeView::Settings::Settings):
      (WebKit::WebLayerTreeView::WebLayerTreeView):
      (WebKit::WebLayerTreeView::~WebLayerTreeView):
      (WebKit::WebLayerTreeView::operator=):
      (WebKit::operator==):
      (WebKit::operator!=):
      * public/WebLayerTreeViewClient.h: Added.
      (WebKit::WebLayerTreeViewClient::~WebLayerTreeViewClient):
      * src/WebContentLayer.cpp: Added.
      (WebKit::WebContentLayer::create):
      (WebKit::WebContentLayer::setDrawsContent):
      (WebKit::WebContentLayer::drawsContent):
      (WebKit::WebContentLayer::setNeedsDisplay):
      (WebKit::WebContentLayer::dirtyRect):
      (WebKit::WebContentLayer::WebContentLayer):
      (WebKit::WebContentLayer::operator=):
      (WebKit::WebContentLayer::operator PassRefPtr<WebContentLayerImpl>):
      * src/WebContentLayerImpl.cpp: Added.
      (WebKit::WebContentLayerImpl::create):
      (WebKit::WebContentLayerImpl::WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::~WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::setDrawsContent):
      (WebKit::WebContentLayerImpl::drawsContent):
      (WebKit::WebContentLayerImpl::paintContents):
      (WebKit::WebContentLayerImpl::notifySyncRequired):
      * src/WebContentLayerImpl.h: Added.
      * src/WebLayer.cpp: Added.
      (WebKit::WebLayer::create):
      (WebKit::WebLayer::~WebLayer):
      (WebKit::WebLayer::reset):
      (WebKit::WebLayer::assign):
      (WebKit::WebLayer::equals):
      (WebKit::WebLayer::rootLayer):
      (WebKit::WebLayer::parent):
      (WebKit::WebLayer::addChild):
      (WebKit::WebLayer::insertChild):
      (WebKit::WebLayer::replaceChild):
      (WebKit::WebLayer::removeFromParent):
      (WebKit::WebLayer::removeAllChildren):
      (WebKit::WebLayer::setAnchorPoint):
      (WebKit::WebLayer::anchorPoint):
      (WebKit::WebLayer::setAnchorPointZ):
      (WebKit::WebLayer::anchorPointZ):
      (WebKit::WebLayer::setBounds):
      (WebKit::WebLayer::bounds):
      (WebKit::WebLayer::setMasksToBounds):
      (WebKit::WebLayer::masksToBounds):
      (WebKit::WebLayer::setMaskLayer):
      (WebKit::WebLayer::maskLayer):
      (WebKit::WebLayer::setOpacity):
      (WebKit::WebLayer::opacity):
      (WebKit::WebLayer::setOpaque):
      (WebKit::WebLayer::opaque):
      (WebKit::WebLayer::setPosition):
      (WebKit::WebLayer::position):
      (WebKit::WebLayer::setSublayerTransform):
      (WebKit::WebLayer::sublayerTransform):
      (WebKit::WebLayer::setTransform):
      (WebKit::WebLayer::transform):
      (WebKit::WebLayer::WebLayer):
      (WebKit::WebLayer::operator=):
      (WebKit::WebLayer::operator PassRefPtr<LayerChromium>):
      * src/WebLayerImpl.cpp: Added.
      (WebKit::WebLayerImpl::create):
      (WebKit::WebLayerImpl::WebLayerImpl):
      (WebKit::WebLayerImpl::~WebLayerImpl):
      (WebKit::WebLayerImpl::drawsContent):
      (WebKit::WebLayerImpl::paintContents):
      (WebKit::WebLayerImpl::notifySyncRequired):
      * src/WebLayerImpl.h: Added.
      * src/WebLayerTreeView.cpp: Added.
      (WebKit::WebLayerTreeView::Settings::operator CCSettings):
      (WebKit::WebLayerTreeView::create):
      (WebKit::WebLayerTreeView::reset):
      (WebKit::WebLayerTreeView::assign):
      (WebKit::WebLayerTreeView::equals):
      (WebKit::WebLayerTreeView::composite):
      (WebKit::WebLayerTreeView::setViewportSize):
      (WebKit::WebLayerTreeView::viewportSize):
      (WebKit::WebLayerTreeView::WebLayerTreeView):
      (WebKit::WebLayerTreeView::operator=):
      (WebKit::WebLayerTreeView::operator PassRefPtr<CCLayerTreeHost>):
      * src/WebLayerTreeViewImpl.cpp: Added.
      (WebKit::WebLayerTreeViewImpl::create):
      (WebKit::WebLayerTreeViewImpl::WebLayerTreeViewImpl):
      (WebKit::WebLayerTreeViewImpl::~WebLayerTreeViewImpl):
      (WebKit::WebLayerTreeViewImpl::animateAndLayout):
      (WebKit::WebLayerTreeViewImpl::applyScrollDelta):
      (WebKit::WebLayerTreeViewImpl::createLayerTreeHostContext3D):
      (WebKit::WebLayerTreeViewImpl::didRecreateGraphicsContext):
      (WebKit::WebLayerTreeViewImpl::scheduleComposite):
      * src/WebLayerTreeViewImpl.h: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96990 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1cdcb809
    • abarth@webkit.org's avatar
      Add a Content-Security-Policy to garden-o-matic · 189e3f6c
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69668
      
      Reviewed by David Levin.
      
      This will help mitigate cross-site script and will also help us dogfood CSP.
      
      * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/garden-o-matic.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96989 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      189e3f6c
    • barraclough@apple.com's avatar
      Refactor DFG to make for use of callOperation · 02a3936a
      barraclough@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=69672
      
      Reviewed by Oliver Hunt.
      
      * dfg/DFGJITCodeGenerator.h:
      (JSC::DFG::callOperation):
          - Added new callOperation calls, don't ASSERT flushed (use helpers for unexpected calls, too).
      * dfg/DFGOperations.cpp:
      * dfg/DFGOperations.h:
          - Switch operationNewObject/operationCreateThis to return Cells,
          - Added C_DFGOperation_E/C_DFGOperation_EC/J_DFGOperation_EA/J_DFGOperation_EJA call types.
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compileLogicalNot):
      (JSC::DFG::SpeculativeJIT::emitBranch):
      (JSC::DFG::SpeculativeJIT::compile):
          - Replace code plating calls to operations to with calls to callOperation.
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::compileLogicalNot):
      (JSC::DFG::SpeculativeJIT::emitBranch):
      (JSC::DFG::SpeculativeJIT::compile):
          - Replace code plating calls to operations to with calls to callOperation.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96988 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      02a3936a
    • commit-queue@webkit.org's avatar
      CSS text-transform should apply to select elements · 83ab3ea7
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69503
      
      Patch by Ben Wells <benwells@chromium.org> on 2011-10-07
      Reviewed by Ojan Vafai.
      
      Source/WebCore:
      
      Select elements are drawn in two ways depending on whether they are multiple and what their size is.
      Neither method previously handled text-transforms. Both of these rendering styles are now updated to transform
      their text correctly.
      
      Test: fast/css/text-transform-select.html
      
      * rendering/RenderListBox.cpp:
      (WebCore::RenderListBox::updateFromElement):
      (WebCore::RenderListBox::paintItemForeground):
      * rendering/RenderMenuList.cpp:
      (WebCore::RenderMenuList::updateOptionsWidth):
      (WebCore::RenderMenuList::setText):
      (WebCore::RenderMenuList::itemText):
      * rendering/RenderText.cpp:
      (WebCore::makeCapitalized):
      (WebCore::applyTextTransform):
      (WebCore::RenderText::setTextInternal):
      (WebCore::RenderText::textWithoutTranscoding):
      * rendering/RenderText.h:
      
      LayoutTests:
      
      * fast/css/text-transform-select-expected.txt: Added.
      * fast/css/text-transform-select.html: Added.
      * platform/chromium-linux/fast/css/text-transform-select-expected.png: Added.
      * platform/chromium/test_expectations.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96987 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      83ab3ea7
    • commit-queue@webkit.org's avatar
      First round of unit tests for CCLayerTreeHostCommon. · 97dd2733
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69197
      
      Patch by Shawn Singh <shawnsingh@chromium.org> on 2011-10-07
      Reviewed by James Robinson.
      
      This round of tests focuses on verifying the computation of matrix transforms
      in calculateDrawTransformsAndVisibility.
      
      * WebKit.gypi:
      * tests/CCLayerTreeHostCommonTest.cpp: Added.
      (WebCore::setLayerPropertiesForTesting):
      (WebCore::executeCalculateDrawTransformsAndVisibility):
      (WebCore::remove3DComponentOfMatrix):
      (WebCore::LayerChromiumWithForcedDrawsContent::LayerChromiumWithForcedDrawsContent):
      (WebCore::LayerChromiumWithForcedDrawsContent::drawsContent):
      (WebCore::TEST):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96986 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      97dd2733
    • tony@chromium.org's avatar
      fix a crash when loading non-html multipart data · a4c0ee0e
      tony@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69675
      
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      setupForReplaceByMIMEType calls DocumentWriter::end().  This leads to
      a crash on Mac because WebHTMLRepresentation() calls commitLoad(nil),
      which tries to write to the DocumentWriter.  By just inlining the code
      to load the last page, we avoid this crash (and makes the non-html
      multipart code more like the html multipart code).
      
      * loader/DocumentLoader.cpp:
      (WebCore::DocumentLoader::maybeFinishLoadingMultipartContent):
      
      LayoutTests:
      
      * http/tests/multipart/load-last-non-html-frame.php: Ensure same
        output on Apple Mac and Chromium (was getting different number of
        trailing new lines).
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96985 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a4c0ee0e
    • commit-queue@webkit.org's avatar
      XSLT-generated document should inherit its SecurityOrigin from the source document · 20bc083e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=69661
      
      Patch by Sergey Glazunov <serg.glazunov@gmail.com> on 2011-10-07
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      Test: http/tests/security/xss-DENIED-xsl-document-securityOrigin.xml
      
      * xml/XSLTProcessor.cpp:
      (WebCore::XSLTProcessor::createDocumentFromSource):
      
      LayoutTests:
      
      * http/tests/security/xss-DENIED-xsl-document-securityOrigin-expected.txt: Added.
      * http/tests/security/xss-DENIED-xsl-document-securityOrigin.xml: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96984 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      20bc083e
    • oliver@apple.com's avatar
      Support string indexing in the DFG · 097318f1
      oliver@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=69671
      
      Reviewed by Gavin Barraclough.
      
      Emit code to support inline indexing of strings
      
      * dfg/DFGSpeculativeJIT.cpp:
      (JSC::DFG::SpeculativeJIT::compileGetByValOnString):
          Shared code to perform string indexing.
      * dfg/DFGSpeculativeJIT.h:
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
          Use compileGetByValOnString if we predict that the base object
          is a string in GetByVal.
      * runtime/JSString.h:
      (JSC::JSString::offsetOfFiberCount):
      (JSC::JSString::offsetOfValue):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96983 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      097318f1
    • bfulgham@webkit.org's avatar
      [WinCairo] Unreviewed Skiplist update to get WinCairo bot green. · ea91c50d
      bfulgham@webkit.org authored
      * platform/wincairo/Skipped: Skip a few failing test categories.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96982 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ea91c50d
    • rniwa@webkit.org's avatar
      Re-enable a test fixed by r93529. · e25ab654
      rniwa@webkit.org authored
      * platform/win/Skipped:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96981 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e25ab654
    • fpizlo@apple.com's avatar
      DFG ConvertThis speculation logic is wrong · ed85bdce
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=69663
      
      Reviewed by Oliver Hunt.
      
      * dfg/DFGPropagator.cpp:
      (JSC::DFG::Propagator::fixupNode):
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96980 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ed85bdce
    • ap@apple.com's avatar
      [Mac] Scrollbars in embedded PDFs should update when system preferences change · f9d0c130
      ap@apple.com authored
              https://bugs.webkit.org/show_bug.cgi?id=69654
      
              Reviewed by Simon Fraser.
      
              * WebProcess/Plugins/PDF/BuiltInPDFView.h: Added an scrollbarStyleChanged() override.
              ScrollAnimatorMac sets scrollbar frame to a bogus (0, 0, thickness, thickness) one when style
              changes, and expects clients to move them back in place.
      
              * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
              (WebKit::BuiltInPDFView::isOnActivePage): Fixed a typo that prevented ScrollAnimatorMac from
              updating style of PDF view scrollbars.
              (WebKit::BuiltInPDFView::scrollbarStyleChanged): Reposition scrollbars and content after
              style change. The behavior is not perfect in edge cases, but roughly matches ScrollView.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96979 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f9d0c130
    • oliver@apple.com's avatar
      2011-10-07 Oliver Hunt <oliver@apple.com> · 67ca2a6b
      oliver@apple.com authored
              Verify that our call speculation is valid.
      
              Reviewed by Filip Pizlo.
      
              Before specialising an intrinsic we need to verify that
              we our speculation is correct.
      
              * dfg/DFGByteCodeParser.cpp:
              (JSC::DFG::ByteCodeParser::parseBlock):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96978 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      67ca2a6b
    • bfulgham@webkit.org's avatar
      [WinCairo] Unreviewed build correction for the build bot. · 5c88d1b8
      bfulgham@webkit.org authored
      * JavaScriptCore.vcproj/JavaScriptCore.sln: Add the missing
      Release_Cairo_CFLite and Debug_Cairo_CFLite targets so that
      build-jsc can find the target it needs to run the JSC tests.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96977 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5c88d1b8
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r96944. · 59a67648
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/96944
      https://bugs.webkit.org/show_bug.cgi?id=69662
      
      Caused many tests to crash on Snow Leopard (Requested by rniwa
      on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-10-07
      
      * css/CSSStyleApplyProperty.cpp:
      (WebCore::ApplyPropertyColor::applyInheritValue):
      * page/animation/AnimationBase.cpp:
      (WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
      (WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
      (WebCore::AnimationBase::ensurePropertyMap):
      * platform/graphics/Color.h:
      (WebCore::Color::Color):
      * rendering/style/BorderValue.h:
      (WebCore::BorderValue::BorderValue):
      (WebCore::BorderValue::isTransparent):
      (WebCore::BorderValue::operator==):
      (WebCore::BorderValue::color):
      * rendering/style/OutlineValue.h:
      (WebCore::OutlineValue::operator==):
      * rendering/style/RenderStyle.h:
      (WebCore::InheritedFlags::setBorderLeftColor):
      (WebCore::InheritedFlags::setBorderRightColor):
      (WebCore::InheritedFlags::setBorderTopColor):
      (WebCore::InheritedFlags::setBorderBottomColor):
      (WebCore::InheritedFlags::setOutlineColor):
      (WebCore::InheritedFlags::setColumnRuleColor):
      (WebCore::InheritedFlags::fillPaintColor):
      (WebCore::InheritedFlags::strokePaintColor):
      (WebCore::InheritedFlags::borderLeftColor):
      (WebCore::InheritedFlags::borderRightColor):
      (WebCore::InheritedFlags::borderTopColor):
      (WebCore::InheritedFlags::borderBottomColor):
      (WebCore::InheritedFlags::backgroundColor):
      (WebCore::InheritedFlags::color):
      (WebCore::InheritedFlags::columnRuleColor):
      (WebCore::InheritedFlags::outlineColor):
      (WebCore::InheritedFlags::textEmphasisColor):
      (WebCore::InheritedFlags::textFillColor):
      (WebCore::InheritedFlags::textStrokeColor):
      (WebCore::InheritedFlags::stopColor):
      (WebCore::InheritedFlags::floodColor):
      (WebCore::InheritedFlags::lightingColor):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96976 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      59a67648
    • hyatt@apple.com's avatar
      https://bugs.webkit.org/show_bug.cgi?id=69658 · ae24c7b0
      hyatt@apple.com authored
              
      [CSS3 Regions] Box painting of overflow into regions is incorrect because children were being
      incorrectly clamped to their containing block region ranges. Change the clamping model so that
      renderRegionForLine no longer does it. A block will now truly have an accurate range across
      all the regions that paint it. Instead, do the clamping at the time a child box asks the containing
      block for its information. At that time clamp to the start and end regions, so that we never ask
      a containing block for info about a region that it doesn't exist in.
      
      Reviewed by Anders Carlsson.
      
      Source/WebCore: 
      
      Added new test in fast/regions and updated an old result to be correct.
      
      * rendering/RenderBlock.cpp:
      (WebCore::RenderBlock::pageLogicalHeightForOffset):
      (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
      (WebCore::RenderBlock::regionAtBlockOffset):
      (WebCore::RenderBlock::clampToStartAndEndRegions):
      * rendering/RenderBlock.h:
      * rendering/RenderBox.cpp:
      (WebCore::RenderBox::borderBoxRectInRegion):
      (WebCore::RenderBox::containingBlockLogicalWidthForContentInRegion):
      (WebCore::RenderBox::renderBoxRegionInfo):
      * rendering/RenderFlowThread.cpp:
      (WebCore::RenderFlowThread::renderRegionForLine):
      (WebCore::RenderFlowThread::regionLogicalWidthForLine):
      (WebCore::RenderFlowThread::regionLogicalHeightForLine):
      (WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
      (WebCore::RenderFlowThread::mapFromFlowToRegion):
      (WebCore::RenderFlowThread::setRegionRangeForBox):
      * rendering/RenderFlowThread.h:
      
      LayoutTests: 
      
      * fast/regions/bottom-overflow-out-of-first-region.html: Added.
      * fast/regions/top-overflow-out-of-second-region.html:
      * platform/mac/fast/regions/bottom-overflow-out-of-first-region-expected.png: Added.
      * platform/mac/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Added.
      * platform/mac/fast/regions/top-overflow-out-of-second-region-expected.png:
      * platform/mac/fast/regions/top-overflow-out-of-second-region-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96975 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ae24c7b0