1. 12 Dec, 2013 14 commits
    • ap@apple.com's avatar
      Make algorithm.name return registered name, not normalized one · 8199d8e9
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125641
      
      Reviewed by Anders Carlsson.
      
      Source/WebCore: 
      
      Currently, WebCrypto editor's draft stipulates that algorithm name is lowercased
      as part of normalization.
      
      But it makes little sense to register algorithms as mixed (mostly upper) case, yet
      return the name lowercased. Other implementations don't bother respecting this,
      and signs are that the spec will change.
      
      I'd like to match other implementations here, because sticking to the spec only
      makes us fail 3rd party test suites for no good reason.
      
      Updated many existing tests.
      
      * crypto/CryptoAlgorithmRegistry.cpp:
      (WebCore::CryptoAlgorithmRegistry::getIdentifierForName):
      (WebCore::CryptoAlgorithmRegistry::registerAlgorithm):
      * crypto/CryptoAlgorithmRegistry.h:
      * crypto/algorithms/CryptoAlgorithmAES_CBC.cpp:
      * crypto/algorithms/CryptoAlgorithmAES_KW.cpp:
      * crypto/algorithms/CryptoAlgorithmHMAC.cpp:
      * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp:
      * crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp:
      * crypto/algorithms/CryptoAlgorithmSHA1.cpp:
      * crypto/algorithms/CryptoAlgorithmSHA224.cpp:
      * crypto/algorithms/CryptoAlgorithmSHA256.cpp:
      * crypto/algorithms/CryptoAlgorithmSHA384.cpp:
      * crypto/algorithms/CryptoAlgorithmSHA512.cpp:
      
      LayoutTests: 
      
      * crypto/subtle/aes-cbc-192-encrypt-decrypt-expected.txt:
      * crypto/subtle/aes-cbc-192-encrypt-decrypt.html:
      * crypto/subtle/aes-cbc-256-encrypt-decrypt-expected.txt:
      * crypto/subtle/aes-cbc-256-encrypt-decrypt.html:
      * crypto/subtle/aes-cbc-encrypt-decrypt-expected.txt:
      * crypto/subtle/aes-cbc-encrypt-decrypt-with-padding-expected.txt:
      * crypto/subtle/aes-cbc-encrypt-decrypt-with-padding.html:
      * crypto/subtle/aes-cbc-encrypt-decrypt.html:
      * crypto/subtle/aes-cbc-generate-key-expected.txt:
      * crypto/subtle/aes-cbc-generate-key.html:
      * crypto/subtle/aes-cbc-import-jwk-expected.txt:
      * crypto/subtle/aes-cbc-import-jwk.html:
      * crypto/subtle/aes-cbc-invalid-length-expected.txt:
      * crypto/subtle/aes-cbc-invalid-length.html:
      * crypto/subtle/aes-cbc-unwrap-failure-expected.txt:
      * crypto/subtle/aes-cbc-unwrap-failure.html:
      * crypto/subtle/aes-cbc-unwrap-rsa-expected.txt:
      * crypto/subtle/aes-cbc-unwrap-rsa.html:
      * crypto/subtle/aes-cbc-wrap-rsa-expected.txt:
      * crypto/subtle/aes-cbc-wrap-rsa-non-extractable-expected.txt:
      * crypto/subtle/aes-cbc-wrap-rsa-non-extractable.html:
      * crypto/subtle/aes-cbc-wrap-rsa.html:
      * crypto/subtle/aes-kw-key-manipulation-expected.txt:
      * crypto/subtle/aes-kw-key-manipulation.html:
      * crypto/subtle/aes-kw-wrap-unwrap-aes-expected.txt:
      * crypto/subtle/aes-kw-wrap-unwrap-aes.html:
      * crypto/subtle/aes-postMessage-expected.txt:
      * crypto/subtle/aes-postMessage.html:
      * crypto/subtle/hmac-generate-key-expected.txt:
      * crypto/subtle/hmac-generate-key.html:
      * crypto/subtle/hmac-import-jwk-expected.txt:
      * crypto/subtle/hmac-import-jwk.html:
      * crypto/subtle/hmac-postMessage-expected.txt:
      * crypto/subtle/hmac-postMessage.html:
      * crypto/subtle/hmac-sign-verify-empty-key-expected.txt:
      * crypto/subtle/hmac-sign-verify-empty-key.html:
      * crypto/subtle/hmac-sign-verify-expected.txt:
      * crypto/subtle/hmac-sign-verify.html:
      * crypto/subtle/postMessage-worker-expected.txt:
      * crypto/subtle/postMessage-worker.html:
      * crypto/subtle/resources/postMessage-worker.js:
      * crypto/subtle/rsa-oaep-key-manipulation-expected.txt:
      * crypto/subtle/rsa-oaep-key-manipulation.html:
      * crypto/subtle/rsa-oaep-wrap-unwrap-aes-expected.txt:
      * crypto/subtle/rsa-oaep-wrap-unwrap-aes.html:
      * crypto/subtle/rsa-postMessage-expected.txt:
      * crypto/subtle/rsa-postMessage.html:
      * crypto/subtle/rsassa-pkcs1-v1_5-generate-key-expected.txt:
      * crypto/subtle/rsassa-pkcs1-v1_5-generate-key.html:
      * crypto/subtle/rsassa-pkcs1-v1_5-import-jwk-expected.txt:
      * crypto/subtle/rsassa-pkcs1-v1_5-import-jwk.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160491 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8199d8e9
    • zandobersek@gmail.com's avatar
      [Autotools] Prepend the WebCore layer archives' names with 'lib' · 0d422e8f
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125627
      
      Reviewed by Martin Robinson.
      
      Source/WebKit2: 
      
      * GNUmakefile.am: Libtool can complain about the WebCore layer archives not being prepended with 'lib'
      when they are used during linking, so the prefix is now added to avoid such issues.
      
      Tools: 
      
      * TestWebKitAPI/GNUmakefile.am: Libtool can complain about the WebCore layer archives not being prepended
      with 'lib' when they are used during linking, so the prefix is now added to avoid such issues.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160490 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0d422e8f
    • m.pakula@samsung.com's avatar
      Unreviewed EFL gardening · 755a020d
      m.pakula@samsung.com authored
      Rebaseline fast/table/empty-cells.html after r160410.
      
      * platform/efl/fast/table/empty-cells-expected.png:
      * platform/efl/fast/table/empty-cells-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160489 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      755a020d
    • m.pakula@samsung.com's avatar
      Unreviewed EFL gardening · 2775d839
      m.pakula@samsung.com authored
      Add test expectations for failing compositing tests.
      
      * platform/efl-wk2/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160488 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2775d839
    • ossy@webkit.org's avatar
      Move CertificateInfo to WebCore · 84c850db
      ossy@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124720
      
      Reviewed by Darin Adler.
      
      Based on the patch by Kwang Yul Seo <skyul@company100.net>
      
      Source/WebCore:
      
      * GNUmakefile.list.am:
      * PlatformEfl.cmake:
      * PlatformGTK.cmake:
      * WebCore.exp.in:
      * WebCore.xcodeproj/project.pbxproj:
      * platform/network/mac/CertificateInfo.h: Renamed from Source/WebKit2/Shared/mac/CertificateInfo.h.
      (WebCore::CertificateInfo::setCertificateChain): Added, because WebCoreArgumentCoders needs it.
      * platform/network/mac/CertificateInfoMac.mm: Renamed from Source/WebKit2/Shared/mac/CertificateInfo.mm.
      (WebCore::CertificateInfo::CertificateInfo): Moved encode() and decode() to WebCoreArgumentCodersMac.mm.
      * platform/network/soup/CertificateInfo.cpp: Copied from Source/WebKit2/Shared/WebCertificateInfo.h.
      (WebCore::CertificateInfo::CertificateInfo): Moved encode() and decode() to WebCoreArgumentCodersSoup.cpp.
      * platform/network/soup/CertificateInfo.h: Renamed from Source/WebKit2/Shared/soup/CertificateInfo.h.
      (WebCore::CertificateInfo::setCertificate): Added, because WebCoreArgumentCoders needs it.
      (WebCore::CertificateInfo::setTLSErrors): Added, because WebCoreArgumentCoders needs it.
      
      Source/WebKit2:
      
      * GNUmakefile.list.am:
      * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
      * NetworkProcess/NetworkProcess.h:
      * NetworkProcess/NetworkProcess.messages.in:
      * NetworkProcess/NetworkResourceLoader.cpp:
      * NetworkProcess/mac/NetworkProcessMac.mm:
      * PlatformEfl.cmake:
      * PlatformGTK.cmake:
      * Shared/API/c/mac/WKCertificateInfoMac.mm:
      * Shared/Authentication/AuthenticationManager.h:
      * Shared/Authentication/AuthenticationManager.messages.in:
      * Shared/Authentication/mac/AuthenticationManager.mac.mm:
      * Shared/UserMessageCoders.h:
      (WebKit::UserMessageDecoder::baseDecode):
      * Shared/WebCertificateInfo.h:
      (WebKit::WebCertificateInfo::create):
      (WebKit::WebCertificateInfo::certificateInfo):
      * Shared/WebCoreArgumentCoders.cpp:
      * Shared/WebCoreArgumentCoders.h:
      * Shared/mac/WebCoreArgumentCodersMac.mm:
      (CoreIPC::ArgumentCoder<CertificateInfo>::encode):
      (CoreIPC::ArgumentCoder<CertificateInfo>::decode):
      * Shared/soup/CertificateInfo.cpp: Removed.
      * Shared/soup/WebCoreArgumentCodersSoup.cpp:
      (CoreIPC::ArgumentCoder<CertificateInfo>::encode):
      (CoreIPC::ArgumentCoder<CertificateInfo>::decode):
      * UIProcess/API/gtk/WebKitCertificateInfoPrivate.h:
      * UIProcess/API/gtk/WebKitWebView.cpp:
      (webkit_web_view_get_tls_info):
      * UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
      (WebKit::AuthenticationChallengeProxy::useCredential):
      * UIProcess/WebFrameProxy.cpp:
      (WebKit::WebFrameProxy::didCommitLoad):
      * UIProcess/WebFrameProxy.h:
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::didCommitLoadForFrame):
      * UIProcess/WebPageProxy.h:
      * UIProcess/WebPageProxy.messages.in:
      * WebKit2.xcodeproj/project.pbxproj:
      * WebProcess/Network/WebResourceLoader.cpp:
      * WebProcess/Network/WebResourceLoader.h:
      * WebProcess/Network/WebResourceLoader.messages.in:
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      * WebProcess/WebProcess.h:
      * WebProcess/WebProcess.messages.in:
      * WebProcess/soup/WebProcessSoup.cpp:
      (WebKit::WebProcess::allowSpecificHTTPSCertificateForHost):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160487 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      84c850db
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r160446. · dedc785f
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/160446
      https://bugs.webkit.org/show_bug.cgi?id=125630
      
      The upower-glib-based implementation is using API that was
      recently removed (Requested by zdobersek1 on #webkit).
      
      Tools:
      
      * Scripts/webkitperl/FeatureList.pm:
      
      LayoutTests:
      
      * platform/gtk/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160486 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dedc785f
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r160417. · 3579e7c2
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/160417
      https://bugs.webkit.org/show_bug.cgi?id=125629
      
      The patch is causing crashes (Requested by zdobersek1 on
      #webkit).
      
      Source/WebCore:
      
      * accessibility/AXObjectCache.cpp:
      (WebCore::AXObjectCache::~AXObjectCache):
      (WebCore::AXObjectCache::remove):
      * accessibility/AXObjectCache.h:
      (WebCore::AXObjectCache::detachWrapper):
      * accessibility/atk/AXObjectCacheAtk.cpp:
      (WebCore::AXObjectCache::detachWrapper):
      (WebCore::AXObjectCache::attachWrapper):
      (WebCore::AXObjectCache::postPlatformNotification):
      * accessibility/ios/AXObjectCacheIOS.mm:
      (WebCore::AXObjectCache::detachWrapper):
      * accessibility/mac/AXObjectCacheMac.mm:
      (WebCore::AXObjectCache::detachWrapper):
      * accessibility/win/AXObjectCacheWin.cpp:
      (WebCore::AXObjectCache::detachWrapper):
      
      Tools:
      
      * DumpRenderTree/atk/AccessibilityCallbacksAtk.cpp:
      (axObjectEventListener):
      * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
      
      LayoutTests:
      
      * accessibility/children-changed-sends-notification-expected.txt: Removed.
      * accessibility/children-changed-sends-notification.html: Removed.
      * accessibility/loading-iframe-sends-notification.html:
      * platform/mac/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160485 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3579e7c2
    • mrobinson@webkit.org's avatar
      Remove a few more guards mistakenly added in r160367 · b6eef931
      mrobinson@webkit.org authored
      Reviewed by Carlos Garcia Campos
      
      r160367 was too liberal in hiding APIs from the GObject DOM bindings.
      We should expose the BatteryManager and the text and audio tracks.
      
      * Modules/battery/BatteryManager.idl:
      * html/HTMLMediaElement.idl:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160484 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b6eef931
    • graouts@apple.com's avatar
      Web Inspector: allow editing of colors in CSS resources · ffc95ad7
      graouts@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124364
      
      Reviewed by Timothy Hatcher.
      
      Identify colors in CSS and HTML resources so that hovering these colors shows a HoverMenu
      allowing a ColorPicker hosted in a Popover to be shown to edit the hovered color.
      
      * UserInterface/CSSStyleDeclarationTextEditor.js:
      (WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches):
      Remove the code that goes through the lines of the CodeMirror editor to look for
      color strings and replace it with a call to the .createColorMarkers() CodeMirror
      extension in which the code was refactored. The callback passed to
      .createColorMarkers() handles the CSSStyleDeclarationTextEditor-specific creation
      of color swatches to show the popover, keeping the existing behavior of the Styles
      sidebar panel.
      
      * UserInterface/CodeMirrorAdditions.js:
      Refactor existing code into two new CodeMirror extensions: .boundsForRange(), which
      was previously defined on the CodeMirrorTokenTrackingController but was also needed
      in the new CodeMirrorColorEditingController, and .createColorMarkers(), discussed above.
      
      * UserInterface/CodeMirrorColorEditingController.js: Added.
      (WebInspector.CodeMirrorColorEditingController):
      New class used by SourceCodeTextEditor to coordinate the editing of a color in a CodeMirror
      TextMarker by a ColorPicker hosted in a Popover shown by the activation of a HoverMenu. This
      controller automatically gets the color set by the user using the ColorPicker and updates
      the CodeMirror text editor with the new value. When the user presses the Esc. key while the
      popover is shown, it's automatically dismissed and the original color is reset in the editor.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.get marker):
      (WebInspector.CodeMirrorColorEditingController.prototype.get range):
      (WebInspector.CodeMirrorColorEditingController.prototype.get delegate):
      (WebInspector.CodeMirrorColorEditingController.prototype.set delegate):
      Getters and setters for public properties.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.get color):
      (WebInspector.CodeMirrorColorEditingController.prototype.set color):
      Get and set the color for the edited color marker, replacing the text in the marker's range
      upon setting.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.presentHoverMenu):
      Public API allowing for a HoverMenu to be shown around the bounds of the TextMarker passed
      in the constructor. This method is called from SourceCodeTextEditor when the
      CodeMirrorTokenTrackingController identifies that a token that is part of a TextMarker is
      hovered and that token is a color.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.dismissHoverMenu):
      Public API allowing for the HoverMenu to be dismissed. This method is called when the
      CodeMirrorTokenTrackingController identifies that its "hoveredMarker" is no longer being
      hovered as well as when we identify that editing of the color has completed.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.handleEvent):
      Event handler for the "keydown" event that are being listened to when the HoverMenu
      is activated such that the Esc. key can be used to dimiss the popover and reset the
      original color before any edits.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.hoverMenuButtonWasPressed):
      Implementation of the HoverMenu delegation method used to show a Popover containing a
      ColorPicker upon clicking on the color wheel attached to the HoverMenu. We also remember
      the color set on the marker so that it may be restored when Esc. is pressed and used to
      set the original state of the ColorPicker. The delegation method
      colorEditingControllerDidStartEditing() is also called at this point, which the
      SourceCodeTextEditor implements.
      
      (WebInspector.CodeMirrorColorEditingController.prototype.didDismissPopover):
      Implementation of the Popover delegation method used to identify that color editing has
      completed. The delegation method colorEditingControllerDidFinishEditing() is called
      at this point, which the SourceCodeTextEditor implements.
      
      (WebInspector.CodeMirrorColorEditingController.prototype._colorPickerColorChanged):
      Apply the color set in the color picker to the CodeMirror text editor.
      
      * UserInterface/CodeMirrorTokenTrackingController.js:
      Add two new modes to CodeMirrorTokenTrackingController. The first mode is "None" and is
      the default, incurring no specific token handling behavior. The second mode is "MarkedTokens"
      which identifies hover of a token contained in a CodeMirror TextMarker range. The new
      "MarkedTokens" mode is used by SourceCodeTextEditor to identify when a marked color is being
      hovered to display a HoverMenu.
      
      (WebInspector.CodeMirrorTokenTrackingController):
      (WebInspector.CodeMirrorTokenTrackingController.prototype.set mode):
      Make "None" the new default mode for CodeMirrorTokenTrackingController.
      
      (WebInspector.CodeMirrorTokenTrackingController.prototype.get hoveredMarker):
      (WebInspector.CodeMirrorTokenTrackingController.prototype.set hoveredMarker):
      (WebInspector.CodeMirrorTokenTrackingController.prototype._updateHoveredTokenInfo):
      Check, when we have a "hoveredMarker" set on the CodeMirrorTokenTrackingController,
      whether the "hoveredMarker" is still being hovered when there is no token at the current
      mouse position. We can then determine when we're mousing out of the "hoveredMarker" and
      notify the delegate via the new tokenTrackingControllerMouseOutOfHoveredMarker delegate
      method. The SourceCodeTextEditor uses this method to dismiss its CodeMirrorColorEditingController.
      
      (WebInspector.CodeMirrorTokenTrackingController.prototype._processNewHoveredToken):
      Add support for the new "MarkedTokens" mode.
      
      (WebInspector.CodeMirrorTokenTrackingController.prototype._processMarkedToken):
      For the moment, use the same behavior as the existing "MarkedTokens" mode.
      
      * UserInterface/Color.js:
      (WebInspector.Color):
      Add a new "valid" property to identify whether a color has any invalid (NaN) component. This property
      is used by SourceCodeTextEditor to establish whether a hovered color marker is indeed set to a
      valid color still.
      
      (WebInspector.Color.prototype.copy):
      New method to create an exact copy of a Color instance, used by CodeMirrorColorEditingController
      to duplicate the edited color in case we need to revert it.
      
      * UserInterface/HoverMenu.js:
      (WebInspector.HoverMenu.prototype._handleClickEvent):
      Rename hoverMenuWasActivated to hoverMenuButtonWasPressed per review feedback.
      
      * UserInterface/Images/ColorIcon.png: Added.
      * UserInterface/Images/ColorIcon@2x.png: Added.
      New color wheel icon used to customize the HoverMenu shown by a CodeMirrorColorEditingController.
      
      * UserInterface/Main.html:
      Link to the new CodeMirrorColorEditingController.js file.
      
      * UserInterface/SourceCodeTextEditor.css:
      (.hover-menu.color):
      (.hover-menu.color > img):
      Customize the HoverMenu shown by a CodeMirrorColorEditingController to use the new ColorIcon asset.
      
      * UserInterface/SourceCodeTextEditor.js:
      (WebInspector.SourceCodeTextEditor):
      Add a new "_ignoreContentDidChange" ivar that increments and decrements to track when handling
      of CodeMirror content changes should be disabled.
      
      (WebInspector.SourceCodeTextEditor.prototype.close):
      Adopt the new ._updateTokenTrackingControllerState() method to update the state of the
      CodeMirrorTokenTrackingController.
      
      (WebInspector.SourceCodeTextEditor.prototype.contentDidChange):
      Override the new TextEditor public API called when content in the CodeMirror text editor is changed.
      We use this method to process any newly added line to create any newly added color marker.
      
      (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate):
      (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause):
      (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume):
      (WebInspector.SourceCodeTextEditor.prototype._sourceCodeSourceMapAdded):
      Adopt the new ._updateTokenTrackingControllerState() method to update the state of the
      CodeMirrorTokenTrackingController.
      
      (WebInspector.SourceCodeTextEditor.prototype._updateTokenTrackingControllerState):
      New method acting as the only point where we check the state of the text editor and set the right
      mode and settings on the CodeMirrorTokenTrackingController, including setting the new "MarkedTokens"
      mode when we have color markers, as determined by ._hasColorMarkers().
      
      (WebInspector.SourceCodeTextEditor.prototype._hasColorMarkers):
      Check whether any of the TextMarkers set on the CodeMirror text editor were created for a color.
      
      (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked):
      Check the CodeMirrorTokenTrackingController mode rather than the removed "_jumpToSymbolTrackingModeEnabled"
      ivar to identify we're in the "NonSymbolTokens" mode.
      
      (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerNewHighlightCandidate):
      Refactor method to use the CodeMirrorTokenTrackingController mode to branch into mode-specific code
      and add a new branch for the new "MarkedTokens" mode where we check if the newly hovered token
      is part of a color TextMarker range.
      
      (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerMouseOutOfHoveredMarker):
      Implement this new CodeMirrorTokenTrackingController delegation method to dismiss the
      CodeMirrorColorEditingController as we identify we're no longer hovering over the TextMarker
      for which the CodeMirrorColorEditingController was created.
      
      (WebInspector.SourceCodeTextEditor.prototype._showPopover):
      Adopt the new TextEditor boundsForRange() method.
      
      (WebInspector.SourceCodeTextEditor.prototype._updateColorMarkers):
      Harness the new TextEditor createColorMarkers() method to create new TextMarkers for the provided
      line, or the entire text editor content if none provided. We then immediately call _updateTokenTrackingControllerState()
      so that the new "MarkedTokens" mode is entered in case color TextMarkers were created for the first
      time for this text editor.
      
      (WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedMarkedExpression):
      Called when we've identified the CodeMirrorTokenTrackingController highlighted a TextMarker. We check
      if any of the hovered TextMarkers are for a color, and in this case create a CodeMirrorColorEditingController
      to coordinate the display of a ColorPicker in a Popover to edit the hovered color token. We also check
      whether the hovered marker still contains a valid color, clearing the marker in case it was edited to
      no longer contain a color.
      
      (WebInspector.SourceCodeTextEditor.prototype._dismissCodeMirrorColorEditingController):
      Used to dismiss the CodeMirrorColorEditingController, if previously presented, and reset some internal state.
      
      (WebInspector.SourceCodeTextEditor.prototype.colorEditingControllerDidStartEditing):
      Implement this CodeMirrorColorEditingController delegation method to temporarily disable the
      CodeMirrorTokenTrackingController while we edit the color with the ColorPicker, remove
      the TextMarker for the edited color and instruct that content changes should be ignored
      such that we act on the complete set of color edits upon completion.
      
      (WebInspector.SourceCodeTextEditor.prototype.colorEditingControllerDidFinishEditing):
      Update color markers for the edited line such that any color edits are correctly updated for
      the future and so that, as a side-effect, the CodeMirrorColorEditingController is reset to the
      appropriate mode depending on whether color TextMarkers are indeed available, resetting states
      that may have been altered by colorEditingControllerDidStartEditing().
      
      * UserInterface/TextEditor.js:
      (WebInspector.TextEditor.prototype.contentDidChange):
      New public method meant to be overriden by subclasses, added for the use of SourceCodeTextEditor, exposing
      the list of TextRanges affected by the content change, both in the context of the old content and new content.
      
      (WebInspector.TextEditor.prototype.boundsForRange):
      (WebInspector.TextEditor.prototype.get markers):
      (WebInspector.TextEditor.prototype.findMarkersAtPosition):
      (WebInspector.TextEditor.prototype.createColorMarkers):
      (WebInspector.TextEditor.prototype.colorEditingControllerForMarker):
      New public methods calling into the CodeMirror private ivar for the benefit of SourceCodeTextEditor.
      
      (WebInspector.TextEditor.prototype._contentChanged):
      Call the new contentDidChange() method.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160483 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ffc95ad7
    • zandobersek@gmail.com's avatar
      Use of ar T option not supported by older binutils · af1524c4
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=118732
      
      Reviewed by Gustavo Noronha Silva.
      
      .: 
      
      * Source/autotools/SetupLibtool.m4: Make the AR_FLAGS value usable inside makefiles as an Automake variable.
      
      Source/WebKit2: 
      
      * GNUmakefile.am: To support non-thin archives when generating the WebCoreLayerGtk2 archive,
      switch to using the AR_FLAGS variable (which can be overridden) for providing the ar flags for the
      new archive. Non-thin archives also pose the problem as their members are only noted by the basename
      of the member's object file, and not the full path to it. To work around that, all the object files
      under the build directory are listed by their relative paths. The members of various archives then have
      the basenames of their paths grepped against that list, with the found path correlating to the member
      finally added as the new member of the WebCoreLayerGtk2 archive.
      
      Tools: 
      
      * TestWebKitAPI/GNUmakefile.am: To support non-thin archives when generating the WebCoreLayer archive,
      switch to using the AR_FLAGS variable (which can be overridden) for providing the ar flags for the
      new archive. Non-thin archives also pose the problem as their members are only noted by the basename
      of the member's object file, and not the full path to it. To work around that, all the object files
      under the build directory are listed by their relative paths. The members of various archives then have
      the basenames of their paths grepped against that list, with the found path correlating to the member
      finally added as the new member of the WebCoreLayer archive.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160482 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      af1524c4
    • carlosgc@webkit.org's avatar
      [GTK] WebProcess tests are failing with newer glib · 4d1958ec
      carlosgc@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125621
      
      Reviewed by Martin Robinson.
      
      Newer versions of glib unset the DISPLAY env variable in
      g_test_dbus_up(). The WebProcess needs the DISPLAY variable to
      work, and it's important to keep its value when running the tests
      under Xvfb.
      
      * UIProcess/API/gtk/tests/WebProcessTestRunner.cpp:
      (WebProcessTestRunner::WebProcessTestRunner): Restore the DISPLAY
      env variable after calling g_test_dbus_up().
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160481 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4d1958ec
    • carlosgc@webkit.org's avatar
      [GTK] Make sure unit tests don't use GVFS and dconf · 57d8a5b2
      carlosgc@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125620
      
      Reviewed by Martin Robinson.
      
      They should use the local vfs and the gsettings memory backend.
      
      * UIProcess/API/gtk/tests/TestMain.cpp:
      (main):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160480 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      57d8a5b2
    • darin@apple.com's avatar
      StylePendingImage needs to correctly manage the CSSValue pointer lifetime · 6b9561a0
      darin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125468
      
      Reviewed by Andreas Kling.
      
      Source/WebCore:
      
      Test: fast/css/pending-image-crash.xhtml
      
      Disconnect the reference counted StylePendingImage from the CSSValue that owns
      it when it's not needed any more, otherwise we could end up using a pointer
      that might no longer be valid.
      
      * css/CSSCursorImageValue.cpp:
      (WebCore::CSSCursorImageValue::detachPendingImage): Added. Calls detachFromCSSValue
      on the current image if it is a StylePendingImage.
      (WebCore::CSSCursorImageValue::~CSSCursorImageValue): Call detachPendingImage.
      (WebCore::CSSCursorImageValue::cachedImage): Call detachPendingImage before changing
      m_image to a new value.
      (WebCore::CSSCursorImageValue::clearCachedImage): Ditto.
      * css/CSSCursorImageValue.h: Added detachPendingImage.
      
      * css/CSSImageSetValue.cpp:
      (WebCore::CSSImageSetValue::detachPendingImage): Added. Calls detachFromCSSValue
      on the current image set if it is a StylePendingImage.
      (WebCore::CSSImageSetValue::~CSSImageSetValue): Call detachPendingImage.
      (WebCore::CSSImageSetValue::cachedImageSet): Call detachPendingImage before changing
      m_imageSet to a new value.
      * css/CSSImageSetValue.h: Added detachPendingImage.
      
      * css/CSSImageValue.cpp:
      (WebCore::CSSImageValue::detachPendingImage): Added. Calls detachFromCSSValue on the
      current image if it is a StylePendingImage.
      (WebCore::CSSImageValue::~CSSImageValue): Call detachPendingImage.
      (WebCore::CSSImageValue::cachedImage): Call detachPendingImage before changing m_image
      to a new value.
      * css/CSSImageValue.h: Added detachPendingImage.
      
      * rendering/style/StylePendingImage.h:
      (WebCore::StylePendingImage::cssImageValue): Added a null check.
      (WebCore::StylePendingImage::cssImageGeneratorValue): Added a null check.
      (WebCore::StylePendingImage::cssCursorImageValue): Added a null check.
      (WebCore::StylePendingImage::cssImageSetValue): Added a null check.
      (WebCore::StylePendingImage::detachFromCSSValue): Added. Sets m_value to null since
      the style is no longer using this StylePendingImage.
      (WebCore::StylePendingImage::data): Changed to use the "this" pointer since all we
      need is some arbitrary pointer uniquely identifying the image. Before loading the image,
      we have no suitable weak identifier, so it suffices to use the unique pointer to each
      StylePendingImage object. This function is used only in a limited way; it would be nice
      to find a way to make the code less strange long term.
      
      LayoutTests:
      
      * fast/css/pending-image-crash-expected.txt: Added.
      * fast/css/pending-image-crash.xhtml: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160479 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6b9561a0
    • darin@apple.com's avatar
      Remove some unneeded code noticed while looking at StylePendingImage · 1be23539
      darin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125618
      
      Reviewed by Andreas Kling.
      
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::loadPendingImage): Removed redundant function calls.
      
      * rendering/RenderImageResource.cpp: Removed unneeded nullImage and
      usesImageContainerSize member functions.
      (WebCore::RenderImageResource::image): Use Image::nullImage directly instead of
      through RenderImageResourceImage::nullImage.
      
      * rendering/RenderImageResource.h: Removed unneeded usesImageContainerSize
      and nullImage functions. Also removed unneeded includes.
      
      * rendering/RenderImageResourceStyleImage.h: Removed unneeded
      usesImageContainerSize override. Nobody was calling it.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160478 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1be23539
  2. 11 Dec, 2013 26 commits
    • gyuyoung.kim@samsung.com's avatar
      [WK2] Build fix after r160464 · 972a3396
      gyuyoung.kim@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125615
      
      Patch by KyungTae Kim <ktf.kim@samsung.com> on 2013-12-11
      Reviewed by Gyuyoung Kim.
      
      Modify the 2nd parameter for calling WebContext::addMessageReceiver from "this" to "*this"
      because the parameter type is modified from CoreIPC::MessageReceiver* to CoreIPC::MessageReceiver&
      
      * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
      (WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
      * UIProcess/WebBatteryManagerProxy.cpp:
      (WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy):
      * UIProcess/WebNetworkInfoManagerProxy.cpp:
      (WebKit::WebNetworkInfoManagerProxy::WebNetworkInfoManagerProxy):
      * UIProcess/WebVibrationProxy.cpp:
      (WebKit::WebVibrationProxy::WebVibrationProxy):
      * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
      (WebKit::WebSoupRequestManagerProxy::WebSoupRequestManagerProxy):
      * WebProcess/Battery/WebBatteryManager.cpp:
      (WebKit::WebBatteryManager::WebBatteryManager):
      * WebProcess/NetworkInfo/WebNetworkInfoManager.cpp:
      (WebKit::WebNetworkInfoManager::WebNetworkInfoManager):
      * WebProcess/soup/WebSoupRequestManager.cpp:
      (WebKit::WebSoupRequestManager::WebSoupRequestManager):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160476 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      972a3396
    • lforschler@apple.com's avatar
      Versioning. · 60f3e188
      lforschler@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160473 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      60f3e188
    • benjamin@webkit.org's avatar
      Add the CFNetwork implementation of the asynchronous ResourceHandle · 4da8bd42
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124440
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-11
      Reviewed by Alexey Proskuryakov.
      
      Add a second subclass of ResourceHandleCFURLConnectionDelegate: ResourceHandleCFURLConnectionDelegateWithOperationQueue.
      The difference is those objects handle the network callback on a different queue.
      
      Some common code has been refactored in ResourceHandleCFURLConnectionDelegate to reduce duplicated code.
      
      The initialization of the request and connection is moved to the subclass to clean up initialization.
      
      * WebCore.xcodeproj/project.pbxproj:
      * platform/network/ResourceHandle.h:
      * platform/network/ResourceHandleClient.cpp:
      (WebCore::ResourceHandleClient::willCacheResponseAsync):
      * platform/network/ResourceHandleClient.h:
      * platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp: Added.
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::ResourceHandleCFURLConnectionDelegateWithOperationQueue):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::~ResourceHandleCFURLConnectionDelegateWithOperationQueue):
      (WebCore::connectionWasCancelled):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::setupRequest):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::setupConnectionScheduling):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willSendRequest):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveData):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFinishLoading):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFail):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willCacheResponse):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveChallenge):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::shouldUseCredentialStorage):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::canRespondToProtectionSpace):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveDataArray):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueWillSendRequest):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueDidReceiveResponse):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueShouldUseCredentialStorage):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueWillCacheResponse):
      (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueCanAuthenticateAgainstProtectionSpace):
      * platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.h: Copied from Source/WebCore/platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.h.
      * platform/network/cf/ResourceHandleCFNet.cpp:
      (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
      (WebCore::ResourceHandle::createCFURLConnection):
      (WebCore::ResourceHandle::start):
      (WebCore::ResourceHandle::shouldUseCredentialStorage):
      (WebCore::ResourceHandle::canAuthenticateAgainstProtectionSpace):
      (WebCore::ResourceHandle::continueWillSendRequest):
      (WebCore::ResourceHandle::continueDidReceiveResponse):
      (WebCore::ResourceHandle::continueShouldUseCredentialStorage):
      (WebCore::ResourceHandle::continueCanAuthenticateAgainstProtectionSpace):
      (WebCore::ResourceHandle::continueWillCacheResponse):
      * platform/network/cf/ResourceHandleCFURLConnectionDelegate.cpp:
      (WebCore::ResourceHandleCFURLConnectionDelegate::releaseHandle):
      (WebCore::ResourceHandleCFURLConnectionDelegate::synthesizeRedirectResponseIfNecessary):
      (WebCore::ResourceHandleCFURLConnectionDelegate::createResourceRequest):
      * platform/network/cf/ResourceHandleCFURLConnectionDelegate.h:
      * platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp:
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::setupRequest):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::setupConnectionScheduling):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::willSendRequest):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueWillSendRequest):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueDidReceiveResponse):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueShouldUseCredentialStorage):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueWillCacheResponse):
      (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueCanAuthenticateAgainstProtectionSpace):
      * platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160467 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4da8bd42
    • commit-queue@webkit.org's avatar
      check-webkit-style shouldn't check spacing in #if preprocessor lines · ad0b1dc5
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125534
      
      Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-11
      Reviewed by Ryosuke Niwa.
      
      Preprocessor lines that start with #if shouldn't have to adhere to
      the same spacing requirements that regular code does
      
      * Scripts/webkitpy/style/checkers/cpp.py:
      (check_spacing):
      * Scripts/webkitpy/style/checkers/cpp_unittest.py:
      (CppStyleTest.test_spacing_for_binary_ops):
      (WebKitStyleTest.test_line_breaking):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160466 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ad0b1dc5
    • commit-queue@webkit.org's avatar
      [Win] Build fix after r159768. · fbd5e8e7
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125467
      
      Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-11
      Reviewed by Brent Fulgham.
      
      * WebKit.vcxproj/WebKit/WebKitVersion.cmd:
      Set PATH environment variable to include cygwin bin directory.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160465 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fbd5e8e7
    • andersca@apple.com's avatar
      MessageReceiverMap should take MessageReceiver objects by reference · b19db267
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125605
      
      Reviewed by Tim Horton.
      
      * Platform/CoreIPC/MessageReceiverMap.cpp:
      (CoreIPC::MessageReceiverMap::addMessageReceiver):
      * Platform/CoreIPC/MessageReceiverMap.h:
      * Shared/Authentication/AuthenticationManager.cpp:
      (WebKit::AuthenticationManager::AuthenticationManager):
      * Shared/ChildProcess.cpp:
      (WebKit::ChildProcess::addMessageReceiver):
      * Shared/ChildProcess.h:
      * Shared/ChildProcessProxy.cpp:
      (WebKit::ChildProcessProxy::addMessageReceiver):
      * Shared/ChildProcessProxy.h:
      * UIProcess/Downloads/DownloadProxyMap.cpp:
      (WebKit::DownloadProxyMap::createDownloadProxy):
      * UIProcess/DrawingAreaProxy.cpp:
      (WebKit::DrawingAreaProxy::DrawingAreaProxy):
      * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
      (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
      * UIProcess/WebApplicationCacheManagerProxy.cpp:
      (WebKit::WebApplicationCacheManagerProxy::WebApplicationCacheManagerProxy):
      * UIProcess/WebConnectionToWebProcess.cpp:
      (WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):
      * UIProcess/WebContext.cpp:
      (WebKit::WebContext::WebContext):
      (WebKit::WebContext::addMessageReceiver):
      * UIProcess/WebContext.h:
      * UIProcess/WebCookieManagerProxy.cpp:
      (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
      * UIProcess/WebDatabaseManagerProxy.cpp:
      (WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy):
      * UIProcess/WebFullScreenManagerProxy.cpp:
      (WebKit::WebFullScreenManagerProxy::WebFullScreenManagerProxy):
      * UIProcess/WebGeolocationManagerProxy.cpp:
      (WebKit::WebGeolocationManagerProxy::WebGeolocationManagerProxy):
      * UIProcess/WebIconDatabase.cpp:
      (WebKit::WebIconDatabase::WebIconDatabase):
      * UIProcess/WebInspectorProxy.cpp:
      (WebKit::WebInspectorProxy::WebInspectorProxy):
      * UIProcess/WebMediaCacheManagerProxy.cpp:
      (WebKit::WebMediaCacheManagerProxy::WebMediaCacheManagerProxy):
      * UIProcess/WebOriginDataManagerProxy.cpp:
      (WebKit::WebOriginDataManagerProxy::WebOriginDataManagerProxy):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::WebPageProxy):
      (WebKit::WebPageProxy::reattachToWebProcess):
      * UIProcess/WebResourceCacheManagerProxy.cpp:
      (WebKit::WebResourceCacheManagerProxy::WebResourceCacheManagerProxy):
      * UIProcess/mac/RemoteLayerTreeHost.mm:
      (WebKit::RemoteLayerTreeHost::RemoteLayerTreeHost):
      * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
      (WebKit::WebApplicationCacheManager::WebApplicationCacheManager):
      * WebProcess/Cookies/WebCookieManager.cpp:
      (WebKit::WebCookieManager::WebCookieManager):
      * WebProcess/Geolocation/WebGeolocationManager.cpp:
      (WebKit::WebGeolocationManager::WebGeolocationManager):
      * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp:
      (WebKit::WebIconDatabaseProxy::WebIconDatabaseProxy):
      * WebProcess/MediaCache/WebMediaCacheManager.cpp:
      (WebKit::WebMediaCacheManager::WebMediaCacheManager):
      * WebProcess/Notifications/WebNotificationManager.cpp:
      (WebKit::WebNotificationManager::WebNotificationManager):
      * WebProcess/OriginData/WebOriginDataManager.cpp:
      (WebKit::WebOriginDataManager::WebOriginDataManager):
      * WebProcess/ResourceCache/WebResourceCacheManager.cpp:
      (WebKit::WebResourceCacheManager::WebResourceCacheManager):
      * WebProcess/Storage/StorageAreaMap.cpp:
      (WebKit::StorageAreaMap::StorageAreaMap):
      * WebProcess/WebConnectionToUIProcess.cpp:
      (WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
      * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
      (WebKit::WebDatabaseManager::WebDatabaseManager):
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::WebPage):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160464 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b19db267
    • alex.christensen@flexsim.com's avatar
      [Win] Unreviewed link fix. · e02ef2e6
      alex.christensen@flexsim.com authored
      * WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
      Corrected 64-bit linker symbols.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160463 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e02ef2e6
    • ddkilzer@apple.com's avatar
      Define m_hasBadParent in InlineBox if defined(ADDRESS_SANITIZER) · e358e867
      ddkilzer@apple.com authored
      <http://webkit.org/b/125329>
      
      Reviewed by Darin Adler.
      
      Source/WebCore:
      
      No tests since this is a build fix for:
      
          $ ./Tools/Scripts/build-webkit --release OTHER_CFLAGS="$inherited -DADDRESS_SANITIZER=1"
      
      * rendering/InlineBox.cpp:
      * rendering/InlineBox.h:
      - Replace ASSERT_DISABLED use with
        ASSERT_WITH_SECURITY_IMPLICATION_DISABLED for m_hasBadParent.
      
      * rendering/InlineFlowBox.cpp:
      (WebCore::InlineFlowBox::~InlineFlowBox):
      - Use !ASSERT_WITH_SECURITY_IMPLICATION_DISABLED instead of
        #ifndef NDEBUG since this calls setHasBadParent().
      (WebCore::InlineFlowBox::checkConsistency):
      - Move ASSERT(!m_hasBadChildList) outside of
        #if CHECK_CONSISTENCY and change to
        ASSERT_WITH_SECURITY_IMPLICATION(!m_hasBadChildList).
      
      * rendering/InlineFlowBox.h:
      (WebCore::InlineFlowBox::InlineFlowBox):
      (WebCore::InlineFlowBox::setHasBadChildList):
      - Change #ifndef NDEBUG to
        #if !ASSERT_WITH_SECURITY_IMPLICATION_DISABLED for code using
        m_hasBadChildList.
      
      Source/WTF:
      
      * wtf/Assertions.h: Define macro
      ASSERT_WITH_SECURITY_IMPLICATION_DISABLED based on whether
      ASSERT_WITH_SECURITY_IMPLICATION() is enabled.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160462 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e358e867
    • commit-queue@webkit.org's avatar
      check-webkit-style can't determine if a comma is part of an initialization list · f4df91bc
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125537
      
      Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-11
      Reviewed by Darin Adler.
      
      The original check to make sure that initialization list lines start with
      a comma didn't distinguish between commas that belong to the initialization
      list and commas that are part of function calls. Because we don't want to
      match parentheses with regular expressions, we should weaken this check to
      only check for commas at the end of initialization list lines.
      
      * Scripts/webkitpy/style/checkers/cpp.py:
      (check_member_initialization_list):
      * Scripts/webkitpy/style/checkers/cpp_unittest.py:
      (WebKitStyleTest.test_member_initialization_list):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160461 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f4df91bc
    • commit-queue@webkit.org's avatar
      Type punning error in MD5.cpp · 161a1e88
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125412
      
      Patch by Brendan Long <b.long@cablelabs.com> on 2013-12-11
      Reviewed by Darin Adler.
      
      * wtf/MD5.cpp:
      (WTF::toLittleEndian): Renamed, and use memcpy instead of casting.
      (WTF::MD5::addBytes): Renamed reverseBytes to toLittleEndian.
      (WTF::MD5::checksum): Same, and use memcpy instead of casting to prevent type punning error.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160460 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      161a1e88
    • timothy_horton@apple.com's avatar
      Make it possible to compare layout test results between various configurations of WebKit · a44161b9
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125212
      <rdar://problem/15199108>
      
      Reviewed by Darin Adler.
      
      * Scripts/compare-webkit-configurations: Added.
      Add a script that allows comparison between the "normal" WebKit configuration
      used for testing and a different configuration (e.g. with accelerated drawing
      turned on, with the remote layer tree enabled, or WebKit1 vs WebKit2), like so:
      
      compare-webkit-configurations -2 --comparison=accelerated-drawing compositing/background-color
      
      This script runs the tests once in the default configuration, ignoring
      all test expectations, writing the results out to a temporary directory.
      
      It then runs the tests again in the modified configuration, against the
      just-written temporary results.
      
      Ref tests are treated as pixel tests, with their pixel output dumped to disk.
      
      * DumpRenderTree/mac/DumpRenderTree.mm:
      (resetWebPreferencesToConsistentValues):
      (initializeGlobalsFromCommandLineOptions):
      Enable accelerated drawing if requested.
      
      * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
      (parse_args):
      Add --accelerated-drawing and --remote-layer-tree feature switches, which
      are forwarded on to the test drivers.
      Move those two and --complex-text into their own "feature switches" section.
      Drive-by change "Mac OS X" to "OS X".
      Add --treat-ref-tests-as-pixel-tests option, which treats ref tests
      as traditional pixel tests (with PNGs dumped on disk), and
      ignores e.g. -expected.html files.
      
      * Scripts/webkitpy/port/base.py:
      (Port.reference_files):
      Pretend that there are no ref tests.
      Since is_reference_html_file is intact, our mechanism to ignore
      the expected files will continue working in this case.
      
      * Scripts/webkitpy/port/driver.py:
      (Driver.cmd_line):
      Forward --accelerated-drawing and --remote-layer-tree to DRT/WKTR.
      
      * WebKitTestRunner/TestController.cpp:
      (WTR::TestController::TestController):
      (WTR::TestController::initialize):
      (WTR::TestController::resetPreferencesToConsistentValues):
      * WebKitTestRunner/TestController.h:
      (WTR::TestController::shouldUseRemoteLayerTree):
      * WebKitTestRunner/TestInvocation.cpp:
      (WTR::updateThreadedScrollingForCurrentTest):
      * WebKitTestRunner/mac/PlatformWebViewMac.mm:
      (WTR::PlatformWebView::PlatformWebView):
      Parse and implement the three feature switches.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160459 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a44161b9
    • commit-queue@webkit.org's avatar
      [WebGL] Fix build on GL ES 2.0 targets after r160119 · a3fe57c8
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125541
      
      Patch by Ralph Thomas <ralpht@gmail.com> on 2013-12-11
      Reviewed by Brent Fulgham.
      
      GL ES 2.0 doesn't define GL_HALF_FLOAT_ARB, so pass through HALF_FLOAT_OES (which is defined for GL ES 2.0).
      This change also reverts r160324 which incorrectly defined GL_HALF_FLOAT_ARB for the Windows ANGLE target.
      
      No new tests, no change in functionality.
      
      * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
      (WebCore::GraphicsContext3D::texSubImage2D):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160458 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a3fe57c8
    • joepeck@webkit.org's avatar
      Web Inspector: Push More Inspector Required Classes Down into JavaScriptCore · a3198444
      joepeck@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125324
      
      Reviewed by Timothy Hatcher.
      
      Source/JavaScriptCore:
      
      * CMakeLists.txt:
      * GNUmakefile.am:
      * GNUmakefile.list.am:
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
      * JavaScriptCore.vcxproj/JavaScriptCoreCommon.props:
      * JavaScriptCore.vcxproj/copy-files.cmd:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * bindings/ScriptFunctionCall.cpp: Renamed from Source/WebCore/bindings/js/ScriptFunctionCall.cpp.
      * bindings/ScriptFunctionCall.h: Renamed from Source/WebCore/bindings/js/ScriptFunctionCall.h.
      * bindings/ScriptObject.cpp: Copied from Source/WebCore/inspector/WorkerConsoleAgent.cpp.
      * bindings/ScriptObject.h: Renamed from Source/WebCore/inspector/InspectorBaseAgent.h.
      * bindings/ScriptValue.cpp: Renamed from Source/WebCore/bindings/js/ScriptValue.cpp.
      * bindings/ScriptValue.h: Renamed from Source/WebCore/bindings/js/ScriptValue.h.
      * inspector/InspectorAgentBase.h: Copied from Source/WebCore/inspector/InspectorAgentRegistry.h.
      * inspector/InspectorAgentRegistry.cpp: Renamed from Source/WebCore/inspector/InspectorAgentRegistry.cpp.
      * inspector/InspectorBackendDispatcher.h: Renamed from Source/WebCore/inspector/InspectorBackendDispatcher.h.
      (Inspector::InspectorSupplementalBackendDispatcher::InspectorSupplementalBackendDispatcher):
      (Inspector::InspectorSupplementalBackendDispatcher::~InspectorSupplementalBackendDispatcher):
      * inspector/InspectorValues.cpp: Renamed from Source/WebCore/inspector/InspectorValues.cpp.
      * inspector/InspectorValues.h: Renamed from Source/WebCore/inspector/InspectorValues.h.
      
      Source/WebCore:
      
      Part 1: Push down core inspector classes.
      
        - Move InspectAgentBase, InspectorAgentRegistry, InspectorBackendDispatcher, InspectorValues
          down to JavaScriptCore and into the Inspector namespace.
        - Add forwarding headers for JavaScriptCore/inspector files.
        - Use the Inspector namespace where appropriate.
        - Rename InspectorBaseAgent to InspectorAgentBase for clarity.
      
      Part 2: Push Script wrapper classes down into JavaScriptCore/bindings.
      
        - Move ScriptObject and ScriptValue into JavaScriptCore but namespace Deprecated
        - Add forwarding headers
        - Use Deprecated::ScriptObject and Deprecated::ScriptValue everywhere.
      
      Part 3: Push Down ScriptFunctionCall
      
        - Move ScriptFunctionCall to JavaScriptCore/bindings into namespace Deprecated.
        - Give constructor a function to all for a different JSC::call, because
          WebCore ScriptFunctionCall's use JSMainThreadExecState when isMainThread.
        - Prefer Deprecated::ScriptFunctionCall everywhere it is used in WebCore.
      
      Part 4: Extract InspectorTypeBuilder helper functions
      
        - There is a chunk of InspectorTypeBuilder that never changes. Extract it into
          its own file, InspectorTypeBuilder.h in JSC/inspector, Inspector namespace.
        - This moves TypeBuilder from namespace WebCore to namespace Inspector
        - Rename the WebCore generated InspectorTypeBuilder to InspectorWebTypeBuilders,
          eventually the CodeGenerator script will do this for more then TypeBuilders
          and there will be "JS" TypeBuilders and "Web" TypeBuilders files.
      
      No new tests. No change in functionality, just moving things around.
      
      * CMakeLists.txt:
      * ForwardingHeaders/bindings/ScriptFunctionCall.h: Added.
      * ForwardingHeaders/bindings/ScriptObject.h: Added.
      * ForwardingHeaders/bindings/ScriptValue.h: Added.
      * ForwardingHeaders/inspector/InspectorAgentBase.h: Added.
      * ForwardingHeaders/inspector/InspectorAgentRegistry.h: Added.
      * ForwardingHeaders/inspector/InspectorBackendDispatcher.h: Added.
      * ForwardingHeaders/inspector/InspectorTypeBuilder.h: Added.
      * ForwardingHeaders/inspector/InspectorValues.h: Added.
      * GNUmakefile.am:
      * GNUmakefile.list.am:
      * Modules/indexeddb/IDBAny.cpp:
      (WebCore::IDBAny::scriptValue):
      (WebCore::IDBAny::IDBAny):
      * Modules/indexeddb/IDBAny.h:
      * Modules/indexeddb/IDBCursor.cpp:
      (WebCore::IDBCursor::key):
      (WebCore::IDBCursor::primaryKey):
      (WebCore::IDBCursor::value):
      (WebCore::IDBCursor::update):
      (WebCore::IDBCursor::continueFunction):
      (WebCore::IDBCursor::setValueReady):
      * Modules/indexeddb/IDBCursor.h:
      * Modules/indexeddb/IDBFactory.cpp:
      (WebCore::IDBFactory::cmp):
      * Modules/indexeddb/IDBFactory.h:
      * Modules/indexeddb/IDBIndex.cpp:
      (WebCore::IDBIndex::openCursor):
      (WebCore::IDBIndex::count):
      (WebCore::IDBIndex::openKeyCursor):
      (WebCore::IDBIndex::get):
      (WebCore::IDBIndex::getKey):
      * Modules/indexeddb/IDBIndex.h:
      (WebCore::IDBIndex::openCursor):
      (WebCore::IDBIndex::openKeyCursor):
      * Modules/indexeddb/IDBKeyRange.cpp:
      (WebCore::IDBKeyRange::lowerValue):
      (WebCore::IDBKeyRange::upperValue):
      (WebCore::IDBKeyRange::only):
      (WebCore::IDBKeyRange::lowerBound):
      (WebCore::IDBKeyRange::upperBound):
      (WebCore::IDBKeyRange::bound):
      * Modules/indexeddb/IDBKeyRange.h:
      (WebCore::IDBKeyRange::lowerBound):
      (WebCore::IDBKeyRange::upperBound):
      (WebCore::IDBKeyRange::bound):
      * Modules/indexeddb/IDBObjectStore.cpp:
      (WebCore::IDBObjectStore::get):
      (WebCore::generateIndexKeysForValue):
      (WebCore::IDBObjectStore::add):
      (WebCore::IDBObjectStore::put):
      (WebCore::IDBObjectStore::deleteFunction):
      (WebCore::IDBObjectStore::openCursor):
      (WebCore::IDBObjectStore::count):
      * Modules/indexeddb/IDBObjectStore.h:
      * Modules/indexeddb/IDBRequest.cpp:
      (WebCore::IDBRequest::setResultCursor):
      (WebCore::IDBRequest::onSuccess):
      (WebCore::IDBRequest::onSuccessInternal):
      * Modules/indexeddb/IDBRequest.h:
      * Modules/mediastream/CapabilityRange.cpp:
      (WebCore::scriptValue):
      (WebCore::CapabilityRange::min):
      (WebCore::CapabilityRange::max):
      * Modules/mediastream/CapabilityRange.h:
      * Modules/mediastream/MediaTrackConstraint.h:
      * Modules/mediastream/RTCIceCandidate.cpp:
      * Modules/plugins/QuickTimePluginReplacement.cpp:
      * Modules/plugins/QuickTimePluginReplacement.h:
      * UseJSC.cmake:
      * WebCore.exp.in:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/js/Dictionary.h:
      (WebCore::Dictionary::getEventListener):
      * bindings/js/IDBBindingUtilities.cpp:
      (WebCore::createIDBKeyFromScriptValueAndKeyPath):
      (WebCore::injectIDBKeyIntoScriptValue):
      (WebCore::canInjectIDBKeyIntoScriptValue):
      (WebCore::deserializeIDBValue):
      (WebCore::deserializeIDBValueBuffer):
      (WebCore::idbKeyToScriptValue):
      (WebCore::scriptValueToIDBKey):
      * bindings/js/IDBBindingUtilities.h:
      * bindings/js/JSBindingsAllInOne.cpp:
      * bindings/js/JSDictionary.cpp:
      (WebCore::JSDictionary::convertValue):
      * bindings/js/JSDictionary.h:
      * bindings/js/JSHTMLCanvasElementCustom.cpp:
      (WebCore::JSHTMLCanvasElement::getContext):
      * bindings/js/JSInjectedScriptHostCustom.cpp:
      (WebCore::InjectedScriptHost::scriptValueAsNode):
      (WebCore::InjectedScriptHost::nodeAsScriptValue):
      (WebCore::JSInjectedScriptHost::inspectedObject):
      (WebCore::JSInjectedScriptHost::inspect):
      * bindings/js/JSInjectedScriptManager.cpp:
      (WebCore::InjectedScriptManager::createInjectedScript):
      * bindings/js/JSMainThreadExecState.cpp:
      (WebCore::functionCallHandlerFromAnyThread):
      * bindings/js/JSMainThreadExecState.h:
      (WebCore::JSMainThreadExecState::currentState):
      * bindings/js/JSMessageEventCustom.cpp:
      (WebCore::JSMessageEvent::data):
      (WebCore::handleInitMessageEvent):
      * bindings/js/ScheduledAction.cpp:
      * bindings/js/ScriptCallStackFactory.cpp:
      (WebCore::createScriptArguments):
      * bindings/js/ScriptController.cpp:
      (WebCore::ScriptController::evaluateInWorld):
      (WebCore::ScriptController::evaluate):
      (WebCore::ScriptController::executeScriptInWorld):
      (WebCore::ScriptController::executeScript):
      (WebCore::ScriptController::executeIfJavaScriptURL):
      * bindings/js/ScriptController.h:
      * bindings/js/ScriptDebugServer.cpp:
      (WebCore::ScriptDebugServer::setScriptSource):
      (WebCore::ScriptDebugServer::updateCallStack):
      (WebCore::ScriptDebugServer::dispatchDidPause):
      (WebCore::ScriptDebugServer::runScript):
      * bindings/js/ScriptDebugServer.h:
      * bindings/js/ScriptGlobalObject.cpp: Renamed from Source/WebCore/bindings/js/ScriptObject.cpp.
      (WebCore::handleException):
      (WebCore::ScriptGlobalObject::set):
      (WebCore::ScriptGlobalObject::get):
      (WebCore::ScriptGlobalObject::remove):
      * bindings/js/ScriptGlobalObject.h: Copied from Source/WebCore/inspector/ScriptCallStack.h.
      (WebCore::ScriptGlobalObject::ScriptGlobalObject):
      * bindings/js/ScriptObject.h: Removed.
      * bindings/js/ScriptProfile.cpp:
      (WebCore::buildInspectorObjectFor):
      (WebCore::ScriptProfile::buildInspectorObjectForHead):
      (WebCore::ScriptProfile::buildInspectorObjectForBottomUpHead):
      * bindings/js/ScriptProfile.h:
      * bindings/js/ScriptProfiler.cpp:
      (WebCore::ScriptProfiler::objectByHeapObjectId):
      (WebCore::ScriptProfiler::getHeapObjectId):
      * bindings/js/ScriptProfiler.h:
      * bindings/js/ScriptState.h:
      * bindings/js/SerializedScriptValue.cpp:
      (WebCore::SerializedScriptValue::deserializeForInspector):
      (WebCore::SerializedScriptValue::serialize):
      (WebCore::SerializedScriptValue::deserialize):
      * bindings/js/SerializedScriptValue.h:
      * bindings/js/WorkerScriptController.cpp:
      (WebCore::WorkerScriptController::evaluate):
      (WebCore::WorkerScriptController::setException):
      * bindings/js/WorkerScriptController.h:
      * bindings/scripts/CodeGeneratorJS.pm:
      * bindings/scripts/test/JS/JSTestObj.cpp:
      (WebCore::setJSTestObjAnyAttribute):
      * dom/CustomEvent.cpp:
      (WebCore::CustomEvent::initCustomEvent):
      * dom/CustomEvent.h:
      (WebCore::CustomEvent::detail):
      * dom/MessageEvent.cpp:
      (WebCore::MessageEvent::MessageEvent):
      (WebCore::MessageEvent::initMessageEvent):
      * dom/MessageEvent.h:
      (WebCore::MessageEvent::create):
      (WebCore::MessageEvent::dataAsScriptValue):
      * dom/PopStateEvent.h:
      (WebCore::PopStateEvent::state):
      * dom/ScriptElement.cpp:
      * html/HTMLMediaElement.cpp:
      * html/parser/XSSAuditor.cpp:
      * html/parser/XSSAuditorDelegate.cpp:
      * inspector/CodeGeneratorInspector.py:
      (RawTypes.BaseType.get_raw_validator_call_text):
      (RawTypes.Object.get_array_item_raw_c_type_text):
      (RawTypes.Any.get_array_item_raw_c_type_text):
      (RawTypes.Array.get_array_item_raw_c_type_text):
      (CommandReturnPassModel.OptOutput.get_return_var_type):
      (CommandReturnPassModel.OptOutput.get_output_parameter_type):
      (TypeModel.ExactlyInt.get_input_param_type_text):
      (TypeModel.ExactlyInt.get_opt_output_type_):
      (TypeModel.init_class):
      (TypeBindings.create_named_type_declaration.Helper):
      (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
      (TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
      (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator.CodeGenerator.generate_type_builder):
      (Inspector):
      (ArrayBinding.get_array_item_c_type_text):
      (Generator.go):
      (Generator.process_command):
      * inspector/CodeGeneratorInspectorStrings.py:
      (void):
      (InspectorFrontend_h):
      (InspectorBackendDispatchers_h):
      * inspector/ConsoleMessage.cpp:
      (WebCore::messageSourceValue):
      (WebCore::messageTypeValue):
      (WebCore::messageLevelValue):
      (WebCore::ConsoleMessage::addToFrontend):
      * inspector/ConsoleMessage.h:
      * inspector/ContentSearchUtils.cpp:
      (WebCore::ContentSearchUtils::buildObjectForSearchMatch):
      (WebCore::ContentSearchUtils::searchInTextByLines):
      * inspector/ContentSearchUtils.h:
      * inspector/InjectedScript.cpp:
      (WebCore::InjectedScript::InjectedScript):
      (WebCore::InjectedScript::evaluate):
      (WebCore::InjectedScript::callFunctionOn):
      (WebCore::InjectedScript::evaluateOnCallFrame):
      (WebCore::InjectedScript::getFunctionDetails):
      (WebCore::InjectedScript::getProperties):
      (WebCore::InjectedScript::getInternalProperties):
      (WebCore::InjectedScript::nodeForObjectId):
      (WebCore::InjectedScript::releaseObject):
      (WebCore::InjectedScript::wrapCallFrames):
      (WebCore::InjectedScript::wrapObject):
      (WebCore::InjectedScript::wrapTable):
      (WebCore::InjectedScript::wrapNode):
      (WebCore::InjectedScript::findObjectById):
      (WebCore::InjectedScript::inspectNode):
      (WebCore::InjectedScript::releaseObjectGroup):
      (WebCore::InjectedScript::nodeAsScriptValue):
      * inspector/InjectedScript.h:
      * inspector/InjectedScriptBase.cpp:
      (WebCore::InjectedScriptBase::InjectedScriptBase):
      (WebCore::InjectedScriptBase::initialize):
      (WebCore::InjectedScriptBase::injectedScriptObject):
      (WebCore::InjectedScriptBase::callFunctionWithEvalEnabled):
      (WebCore::InjectedScriptBase::makeCall):
      (WebCore::InjectedScriptBase::makeEvalCall):
      * inspector/InjectedScriptBase.h:
      * inspector/InjectedScriptCanvasModule.cpp:
      (WebCore::InjectedScriptCanvasModule::wrapCanvas2DContext):
      (WebCore::InjectedScriptCanvasModule::wrapWebGLContext):
      (WebCore::InjectedScriptCanvasModule::callWrapContextFunction):
      (WebCore::InjectedScriptCanvasModule::markFrameEnd):
      (WebCore::InjectedScriptCanvasModule::callStartCapturingFunction):
      (WebCore::InjectedScriptCanvasModule::callVoidFunctionWithTraceLogIdArgument):
      (WebCore::InjectedScriptCanvasModule::traceLog):
      (WebCore::InjectedScriptCanvasModule::replayTraceLog):
      (WebCore::InjectedScriptCanvasModule::resourceInfo):
      (WebCore::InjectedScriptCanvasModule::resourceState):
      * inspector/InjectedScriptCanvasModule.h:
      * inspector/InjectedScriptHost.cpp:
      (WebCore::InjectedScriptHost::inspectImpl):
      (WebCore::InjectedScriptHost::InspectableObject::get):
      * inspector/InjectedScriptHost.h:
      * inspector/InjectedScriptManager.cpp:
      (WebCore::InjectedScriptManager::injectedScriptFor):
      * inspector/InjectedScriptManager.h:
      * inspector/InjectedScriptModule.cpp:
      (WebCore::InjectedScriptModule::ensureInjected):
      * inspector/InspectorAgent.cpp:
      (WebCore::InspectorAgent::InspectorAgent):
      (WebCore::InspectorAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorAgent::inspect):
      * inspector/InspectorAgent.h:
      * inspector/InspectorAllInOne.cpp:
      * inspector/InspectorApplicationCacheAgent.cpp:
      (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
      (WebCore::InspectorApplicationCacheAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):
      (WebCore::InspectorApplicationCacheAgent::getApplicationCacheForFrame):
      (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
      (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
      (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource):
      * inspector/InspectorApplicationCacheAgent.h:
      * inspector/InspectorCSSAgent.cpp:
      (WebCore::SelectorProfile::toInspectorObject):
      (WebCore::InspectorCSSAgent::InspectorCSSAgent):
      (WebCore::InspectorCSSAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorCSSAgent::getMatchedStylesForNode):
      (WebCore::InspectorCSSAgent::getInlineStylesForNode):
      (WebCore::InspectorCSSAgent::getComputedStyleForNode):
      (WebCore::InspectorCSSAgent::getAllStyleSheets):
      (WebCore::InspectorCSSAgent::getStyleSheet):
      (WebCore::InspectorCSSAgent::setStyleText):
      (WebCore::InspectorCSSAgent::setPropertyText):
      (WebCore::InspectorCSSAgent::toggleProperty):
      (WebCore::InspectorCSSAgent::setRuleSelector):
      (WebCore::InspectorCSSAgent::addRule):
      (WebCore::InspectorCSSAgent::getSupportedCSSProperties):
      (WebCore::InspectorCSSAgent::getNamedFlowCollection):
      (WebCore::InspectorCSSAgent::stopSelectorProfiler):
      (WebCore::InspectorCSSAgent::stopSelectorProfilerImpl):
      (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
      (WebCore::InspectorCSSAgent::collectStyleSheets):
      (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
      (WebCore::InspectorCSSAgent::detectOrigin):
      (WebCore::InspectorCSSAgent::buildObjectForRule):
      (WebCore::InspectorCSSAgent::buildArrayForRuleList):
      (WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList):
      (WebCore::InspectorCSSAgent::buildObjectForAttributesStyle):
      (WebCore::InspectorCSSAgent::buildArrayForRegions):
      (WebCore::InspectorCSSAgent::buildObjectForNamedFlow):
      * inspector/InspectorCSSAgent.h:
      * inspector/InspectorCanvasAgent.cpp:
      (WebCore::InspectorCanvasAgent::InspectorCanvasAgent):
      (WebCore::InspectorCanvasAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorCanvasAgent::wrapCanvas2DRenderingContextForInstrumentation):
      (WebCore::InspectorCanvasAgent::wrapWebGLRenderingContextForInstrumentation):
      (WebCore::InspectorCanvasAgent::notifyRenderingContextWasWrapped):
      (WebCore::InspectorCanvasAgent::injectedScriptCanvasModule):
      * inspector/InspectorCanvasAgent.h:
      * inspector/InspectorCanvasInstrumentation.h:
      (WebCore::InspectorInstrumentation::wrapCanvas2DRenderingContextForInstrumentation):
      (WebCore::InspectorInstrumentation::wrapWebGLRenderingContextForInstrumentation):
      * inspector/InspectorClient.cpp:
      * inspector/InspectorClient.h:
      * inspector/InspectorConsoleAgent.cpp:
      (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
      (WebCore::InspectorConsoleAgent::didCreateFrontendAndBackend):
      (WebCore::InspectableHeapObject::get):
      * inspector/InspectorConsoleAgent.h:
      * inspector/InspectorController.cpp:
      * inspector/InspectorController.h:
      * inspector/InspectorDOMAgent.cpp:
      (WebCore::InspectorDOMAgent::InspectorDOMAgent):
      (WebCore::InspectorDOMAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorDOMAgent::getDocument):
      (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
      (WebCore::InspectorDOMAgent::querySelectorAll):
      (WebCore::InspectorDOMAgent::pushNodePathToFrontend):
      (WebCore::InspectorDOMAgent::getEventListenersForNode):
      (WebCore::InspectorDOMAgent::getSearchResults):
      (WebCore::InspectorDOMAgent::resolveNode):
      (WebCore::InspectorDOMAgent::getAttributes):
      (WebCore::InspectorDOMAgent::buildObjectForNode):
      (WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
      (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
      (WebCore::InspectorDOMAgent::buildObjectForEventListener):
      (WebCore::InspectorDOMAgent::didCommitLoad):
      (WebCore::InspectorDOMAgent::didInsertDOMNode):
      (WebCore::InspectorDOMAgent::styleAttributeInvalidated):
      * inspector/InspectorDOMAgent.h:
      * inspector/InspectorDOMDebuggerAgent.cpp:
      (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
      (WebCore::InspectorDOMDebuggerAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorDOMDebuggerAgent::descriptionForDOMEvent):
      * inspector/InspectorDOMDebuggerAgent.h:
      * inspector/InspectorDOMStorageAgent.cpp:
      (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
      (WebCore::InspectorDOMStorageAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorDOMStorageAgent::getDOMStorageItems):
      (WebCore::InspectorDOMStorageAgent::storageId):
      (WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):
      * inspector/InspectorDOMStorageAgent.h:
      * inspector/InspectorDatabaseAgent.cpp:
      (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
      (WebCore::InspectorDatabaseAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
      * inspector/InspectorDatabaseAgent.h:
      * inspector/InspectorDatabaseResource.cpp:
      (WebCore::InspectorDatabaseResource::bind):
      * inspector/InspectorDebuggerAgent.cpp:
      (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
      (WebCore::InspectorDebuggerAgent::didCreateFrontendAndBackend):
      (WebCore::breakpointActionTypeForString):
      (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
      (WebCore::InspectorDebuggerAgent::setBreakpoint):
      (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
      (WebCore::scriptToInspectorObject):
      (WebCore::InspectorDebuggerAgent::searchInContent):
      (WebCore::InspectorDebuggerAgent::setScriptSource):
      (WebCore::InspectorDebuggerAgent::getFunctionDetails):
      (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
      (WebCore::InspectorDebuggerAgent::compileScript):
      (WebCore::InspectorDebuggerAgent::runScript):
      (WebCore::InspectorDebuggerAgent::currentCallFrames):
      (WebCore::InspectorDebuggerAgent::didParseSource):
      (WebCore::InspectorDebuggerAgent::didPause):
      (WebCore::InspectorDebuggerAgent::didContinue):
      (WebCore::InspectorDebuggerAgent::clear):
      * inspector/InspectorDebuggerAgent.h:
      * inspector/InspectorForwarding.h:
      * inspector/InspectorFrontendClientLocal.cpp:
      (WebCore::InspectorFrontendClientLocal::evaluateAsBoolean):
      * inspector/InspectorFrontendHost.cpp:
      (WebCore::FrontendMenuProvider::create):
      (WebCore::FrontendMenuProvider::disconnect):
      (WebCore::FrontendMenuProvider::FrontendMenuProvider):
      (WebCore::FrontendMenuProvider::contextMenuItemSelected):
      (WebCore::FrontendMenuProvider::contextMenuCleared):
      (WebCore::InspectorFrontendHost::showContextMenu):
      * inspector/InspectorHeapProfilerAgent.cpp:
      (WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):
      (WebCore::InspectorHeapProfilerAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorHeapProfilerAgent::createSnapshotHeader):
      (WebCore::InspectorHeapProfilerAgent::getProfileHeaders):
      (WebCore::InspectorHeapProfilerAgent::getObjectByHeapObjectId):
      (WebCore::InspectorHeapProfilerAgent::getHeapObjectId):
      * inspector/InspectorHeapProfilerAgent.h:
      * inspector/InspectorIndexedDBAgent.cpp:
      (WebCore::InspectorIndexedDBAgent::InspectorIndexedDBAgent):
      (WebCore::InspectorIndexedDBAgent::didCreateFrontendAndBackend):
      * inspector/InspectorIndexedDBAgent.h:
      * inspector/InspectorInputAgent.cpp:
      (WebCore::InspectorInputAgent::InspectorInputAgent):
      (WebCore::InspectorInputAgent::didCreateFrontendAndBackend):
      * inspector/InspectorInputAgent.h:
      * inspector/InspectorInstrumentation.cpp:
      * inspector/InspectorInstrumentation.h:
      * inspector/InspectorLayerTreeAgent.cpp:
      (WebCore::InspectorLayerTreeAgent::InspectorLayerTreeAgent):
      (WebCore::InspectorLayerTreeAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorLayerTreeAgent::layersForNode):
      (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderObjectHierarchy):
      (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderLayerHierarchy):
      (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
      (WebCore::InspectorLayerTreeAgent::buildObjectForIntRect):
      (WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer):
      * inspector/InspectorLayerTreeAgent.h:
      * inspector/InspectorMemoryAgent.cpp:
      (WebCore::InspectorMemoryAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorMemoryAgent::InspectorMemoryAgent):
      * inspector/InspectorMemoryAgent.h:
      * inspector/InspectorOverlay.cpp:
      * inspector/InspectorOverlay.h:
      * inspector/InspectorPageAgent.cpp:
      (WebCore::InspectorPageAgent::resourceTypeJson):
      (WebCore::InspectorPageAgent::cachedResourceTypeJson):
      (WebCore::InspectorPageAgent::InspectorPageAgent):
      (WebCore::InspectorPageAgent::didCreateFrontendAndBackend):
      (WebCore::buildObjectForCookie):
      (WebCore::buildArrayForCookies):
      (WebCore::InspectorPageAgent::getCookies):
      (WebCore::InspectorPageAgent::getResourceTree):
      (WebCore::InspectorPageAgent::searchInResource):
      (WebCore::buildObjectForSearchResult):
      (WebCore::InspectorPageAgent::searchInResources):
      (WebCore::InspectorPageAgent::buildObjectForFrame):
      (WebCore::InspectorPageAgent::buildObjectForFrameTree):
      * inspector/InspectorPageAgent.h:
      * inspector/InspectorProfilerAgent.cpp:
      (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
      (WebCore::InspectorProfilerAgent::createProfileHeader):
      (WebCore::InspectorProfilerAgent::createSnapshotHeader):
      (WebCore::InspectorProfilerAgent::getProfileHeaders):
      (WebCore::InspectorProfilerAgent::getCPUProfile):
      (WebCore::InspectorProfilerAgent::didCreateFrontendAndBackend):
      (WebCore::InspectorProfilerAgent::getObjectByHeapObjectId):
      (WebCore::InspectorProfilerAgent::getHeapObjectId):
      * inspector/InspectorProfilerAgent.h:
      * inspector/InspectorResourceAgent.cpp:
      (WebCore::InspectorResourceAgent::didCreateFrontendAndBackend):
      (WebCore::buildObjectForTiming):
      (WebCore::buildObjectForResourceRequest):
      (WebCore::buildObjectForResourceResponse):
      (WebCore::buildObjectForCachedResource):
      (WebCore::InspectorResourceAgent::willSendRequest):
      (WebCore::InspectorResourceAgent::didReceiveResponse):
      (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
      (WebCore::InspectorResourceAgent::buildInitiatorObject):
      (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
      (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
      (WebCore::InspectorResourceAgent::didReceiveWebSocketFrame):
      (WebCore::InspectorResourceAgent::didSendWebSocketFrame):
      (WebCore::InspectorResourceAgent::InspectorResourceAgent):
      * inspector/InspectorResourceAgent.h:
      * inspector/InspectorRuntimeAgent.cpp:
      (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
      (WebCore::buildErrorRangeObject):
      (WebCore::InspectorRuntimeAgent::parse):
      (WebCore::InspectorRuntimeAgent::evaluate):
      (WebCore::InspectorRuntimeAgent::callFunctionOn):
      (WebCore::InspectorRuntimeAgent::getProperties):
      * inspector/InspectorRuntimeAgent.h:
      * inspector/InspectorStyleSheet.cpp:
      (WebCore::buildSourceRangeObject):
      (WebCore::buildMediaObject):
      (WebCore::fillMediaListChain):
      (WebCore::InspectorStyle::buildObjectForStyle):
      (WebCore::InspectorStyle::buildArrayForComputedStyle):
      (WebCore::InspectorStyle::styleWithProperties):
      (WebCore::InspectorStyleSheet::create):
      (WebCore::InspectorStyleSheet::InspectorStyleSheet):
      (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
      (WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
      (WebCore::selectorsFromSource):
      (WebCore::InspectorStyleSheet::buildObjectForSelectorList):
      (WebCore::InspectorStyleSheet::buildObjectForRule):
      (WebCore::InspectorStyleSheet::buildObjectForStyle):
      (WebCore::InspectorStyleSheet::resourceStyleSheetText):
      (WebCore::InspectorStyleSheet::buildArrayForRuleList):
      (WebCore::InspectorStyleSheetForInlineStyle::create):
      (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
      * inspector/InspectorStyleSheet.h:
      (WebCore::InspectorCSSId::InspectorCSSId):
      (WebCore::InspectorStyleSheet::canBind):
      * inspector/InspectorStyleTextEditor.cpp:
      * inspector/InspectorTimelineAgent.cpp:
      (WebCore::InspectorTimelineAgent::didCreateFrontendAndBackend):
      (WebCore::toProtocol):
      (WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
      (WebCore::InspectorTimelineAgent::setDOMCounters):
      (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
      (WebCore::InspectorTimelineAgent::sendEvent):
      * inspector/InspectorTimelineAgent.h:
      (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
      * inspector/InspectorWebAgentBase.h: Renamed from Source/WebCore/inspector/InspectorAgentRegistry.h.
      (WebCore::InspectorAgentBase::InspectorAgentBase):
      * inspector/InspectorWorkerAgent.cpp:
      (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
      (WebCore::InspectorWorkerAgent::didCreateFrontendAndBackend):
      * inspector/InspectorWorkerAgent.h:
      * inspector/InstrumentingAgents.cpp:
      * inspector/NetworkResourcesData.cpp:
      * inspector/PageConsoleAgent.cpp:
      (WebCore::InspectableNode::get):
      * inspector/PageDebuggerAgent.cpp:
      * inspector/PageDebuggerAgent.h:
      * inspector/PageRuntimeAgent.cpp:
      (WebCore::PageRuntimeAgent::didCreateFrontendAndBackend):
      * inspector/PageRuntimeAgent.h:
      * inspector/ScriptArguments.cpp:
      (WebCore::ScriptArguments::create):
      (WebCore::ScriptArguments::ScriptArguments):
      (WebCore::ScriptArguments::argumentAt):
      (WebCore::ScriptArguments::getFirstArgumentAsString):
      * inspector/ScriptArguments.h:
      * inspector/ScriptCallFrame.cpp:
      (WebCore::ScriptCallFrame::buildInspectorObject):
      * inspector/ScriptCallFrame.h:
      * inspector/ScriptCallStack.cpp:
      (WebCore::ScriptCallStack::buildInspectorArray):
      * inspector/ScriptCallStack.h:
      * inspector/ScriptDebugListener.h:
      * inspector/TimelineRecordFactory.cpp:
      * inspector/TimelineRecordFactory.h:
      (WebCore::TimelineRecordFactory::createWebSocketCreateData):
      (WebCore::TimelineRecordFactory::createGenericWebSocketData):
      * inspector/WorkerConsoleAgent.cpp:
      * inspector/WorkerDebuggerAgent.cpp:
      * inspector/WorkerInspectorController.cpp:
      * inspector/WorkerInspectorController.h:
      * inspector/WorkerRuntimeAgent.cpp:
      (WebCore::WorkerRuntimeAgent::didCreateFrontendAndBackend):
      * inspector/WorkerRuntimeAgent.h:
      * page/Console.cpp:
      * page/ContentSecurityPolicy.cpp:
      * page/Frame.cpp:
      * page/PageConsole.cpp:
      * plugins/PluginView.cpp:
      (WebCore::PluginView::performRequest):
      * testing/Internals.cpp:
      (WebCore::Internals::parserMetaData):
      * testing/Internals.h:
      * workers/SharedWorkerGlobalScope.cpp:
      (WebCore::createConnectEvent):
      * workers/WorkerGlobalScope.cpp:
      (WebCore::WorkerGlobalScope::importScripts):
      * workers/WorkerThread.cpp:
      * xml/XMLTreeViewer.cpp:
      * xml/parser/XMLDocumentParser.cpp:
      * xml/parser/XMLDocumentParserLibxml2.cpp:
      
      Source/WebKit:
      
      * WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
      
      Source/WebKit/blackberry:
      
      * Api/WebPage.cpp:
      
      Source/WebKit/efl:
      
      * WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
      * ewk/ewk_frame.cpp:
      
      Source/WebKit/gtk:
      
      * webkit/webkitwebview.cpp:
      
      Source/WebKit/mac:
      
      * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
      * WebCoreSupport/WebInspectorClient.mm:
      * WebView/WebFrame.mm:
      * WebView/WebView.mm:
      
      Source/WebKit/win:
      
      * WebFrame.cpp:
      * WebView.cpp:
      
      Source/WebKit2:
      
      * WebProcess/Plugins/PluginView.cpp:
      (WebKit::PluginView::performJavaScriptURLRequest):
      * WebProcess/WebPage/WebInspector.cpp:
      * WebProcess/WebPage/WebInspector.h:
      * WebProcess/WebPage/WebPage.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160457 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a3198444
    • commit-queue@webkit.org's avatar
      Store SHA1 hash in std::array · 6b617941
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125446
      
      Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-12-11
      Reviewed by Darin Adler.
      
      Change Vector to std::array and use typedef.
      
      Source/JavaScriptCore:
      
      * bytecode/CodeBlockHash.cpp:
      (JSC::CodeBlockHash::CodeBlockHash):
      
      Source/WebCore:
      
      * Modules/websockets/WebSocketHandshake.cpp:
      (WebCore::WebSocketHandshake::getExpectedWebSocketAccept):
      * inspector/DOMPatchSupport.cpp:
      (WebCore::DOMPatchSupport::createDigest):
      * platform/network/soup/ResourceHandleSoup.cpp:
      (WebCore::HostTLSCertificateSet::computeCertificateHash):
      
      Source/WTF:
      
      * wtf/SHA1.cpp:
      (WTF::SHA1::computeHash):
      (WTF::SHA1::hexDigest):
      (WTF::SHA1::computeHexDigest):
      * wtf/SHA1.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160456 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6b617941
    • ap@apple.com's avatar
      WebCrypto keys should support structured clone · 351ac9ca
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125590
      
      Reviewed by Oliver Hunt.
      
      Source/WebCore: 
      
      Tests: crypto/subtle/aes-postMessage.html
             crypto/subtle/hmac-postMessage.html
             crypto/subtle/postMessage-worker.html
             crypto/subtle/rsa-postMessage.html
      
      * crypto/CryptoAlgorithmIdentifier.h:
      (WebCore::CryptoAlgorithmIdentifier):
      * bindings/js/JSCryptoAlgorithmDictionary.cpp:
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
      (WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey):
      AES_KW was added to WebCrypto spec editor's draft yesterday night. Now that we're
      adding a matching enum for structired clone serialization, it's as good a time as
      any to update the order of values to match.
      
      * bindings/js/SerializedScriptValue.cpp:
      (WebCore::countUsages):
      (WebCore::CloneSerializer::dumpIfTerminal):
      (WebCore::CloneSerializer::write):
      (WebCore::CloneDeserializer::read):
      (WebCore::CloneDeserializer::readHMACKey):
      (WebCore::CloneDeserializer::readAESKey):
      (WebCore::CloneDeserializer::readRSAKey):
      (WebCore::CloneDeserializer::readCryptoKey):
      (WebCore::CloneDeserializer::readTerminal):
      Added serialization/deserialization for CryptoKey. This doesn't update version
      number, because we don't currently store structured clones in persistent storage -
      and even if we did, we wouldn't want to invalidate everything users already stored.
      
      * crypto/CryptoAlgorithmRegistry.cpp:
      (WebCore::CryptoAlgorithmRegistry::shared):
      (WebCore::registryMutex):
      (WebCore::CryptoAlgorithmRegistry::getIdentifierForName):
      (WebCore::CryptoAlgorithmRegistry::nameForIdentifier):
      (WebCore::CryptoAlgorithmRegistry::create):
      (WebCore::CryptoAlgorithmRegistry::registerAlgorithm):
      * crypto/CryptoKey.idl:
      With structured clone, it is now possible to send a Key to a web worker. That's
      of no practical use because the crypto API is not exposed in workers, but we
      shouldn't crash anyway.
      
      * crypto/keys/CryptoKeyAES.cpp:
      (WebCore::CryptoKeyAES::CryptoKeyAES):
      (WebCore::CryptoKeyAES::isValidAESAlgorithm):
      * crypto/keys/CryptoKeyAES.h:
      Exposed isValidAESAlgorithm, so that a caller could know whether the constructor
      will assert.
      
      * CMakeLists.txt:
      * GNUmakefile.am:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.vcxproj/WebCoreCommon.props:
      Added crypto/keys to search paths to avoid build breakage.
      
      LayoutTests: 
      
      * crypto/subtle/aes-postMessage-expected.txt: Added.
      * crypto/subtle/aes-postMessage.html: Added.
      * crypto/subtle/hmac-postMessage-expected.txt: Added.
      * crypto/subtle/hmac-postMessage.html: Added.
      * crypto/subtle/postMessage-worker-expected.txt: Added.
      * crypto/subtle/postMessage-worker.html: Added.
      * crypto/subtle/rsa-postMessage-expected.txt: Added.
      * crypto/subtle/rsa-postMessage.html: Added.
      * crypto/subtle/resources/postMessage-worker.js: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160455 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      351ac9ca
    • mrowe@apple.com's avatar
      <https://webkit.org/b/125141> Modernize the JavaScriptCore API headers · 4a0e6c15
      mrowe@apple.com authored
      <rdar://problem/15540121>
      
      This consists of three main changes:
      1) Converting the return type of initializer methods to instancetype.
      2) Declaring properties rather than getters and setters.
      3) Tagging C API methods with information about their memory management semantics.
      
      Changing the declarations from getters and setters to properties also required
      updating the headerdoc in a number of places.
      
      Reviewed by Anders Carlsson.
      
      * API/JSContext.h:
      * API/JSContext.mm:
      * API/JSManagedValue.h:
      * API/JSManagedValue.mm:
      * API/JSStringRefCF.h:
      * API/JSValue.h:
      * API/JSVirtualMachine.h:
      * API/JSVirtualMachine.mm:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160454 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4a0e6c15
    • oliver@apple.com's avatar
      Give Unique StringImpls a meaningful data pointer · 12e569e6
      oliver@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125598
      
      Reviewed by Michael Saboff.
      
      Found by code inspection.  If there is a collision in an Identifier
      table when comparing to a string literal we attempt to use the data
      pointer (essentially this ends up being a null termination check).
      
      Previously unique pointers just used the literal 1 as the data address
      but this obviously fails when dereferenced.  Instead we now make the
      data pointer point to the location of the buffer pointer itself.  As
      the buffer pointer is initialised to 0, this satisfies the requirement
      that the 0-length unique string is null terminated.
      
      * wtf/text/StringImpl.h:
      (WTF::StringImpl::StringImpl):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160453 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      12e569e6
    • mrowe@apple.com's avatar
      <https://webkit.org/b/125559> Move JavaScriptCore off the legacy WebKit availability macros · b170d301
      mrowe@apple.com authored
      The legacy WebKit availability macros are verbose, confusing, and provide no benefit over
      using the system availability macros directly. The original vision was that they'd serve
      a cross-platform purpose but that never came to be.
      
      Map from WebKit version to OS X version based on the mapping in WebKitAvailability.h.
      All iOS versions are specified as 7.0 as that is when the JavaScriptCore C API was made
      public.
      
      Part of <rdar://problem/15512304>.
      
      Reviewed by Anders Carlsson.
      
      * API/JSBasePrivate.h:
      * API/JSContextRef.h:
      * API/JSContextRefPrivate.h:
      * API/JSObjectRef.h:
      * API/JSValueRef.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160452 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b170d301
    • betravis@adobe.com's avatar
      Web Inspector: [CSS Shapes] Highlight margin-shape for shape-outside · 0c34d471
      betravis@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125175
      
      Reviewed by Darin Adler.
      
      Source/WebCore:
      
      In addition to highlighting the shape, also highlight the shape created
      by shape-margin with a slightly more transparent color. This patch modifies
      the shape info passed to the Inspector Overlay to include a path for both
      the raw shape and the shape with margin.
      
      Test: inspector-protocol/model/highlight-shape-outside-margin.html
      
      * inspector/InspectorOverlay.cpp:
      (WebCore::buildObjectForShapeOutside): Call Shape::buildDisplayPaths rather than
      Shape::buildPath, and pass along any relevant paths to the Inspector overlay.
      * inspector/InspectorOverlayPage.js:
      (_drawShapeHighlight): Draw the margin shape in addition to the raw shape.
      * rendering/shapes/BoxShape.cpp:
      (WebCore::addRoundedRect): Add a rounded rect to the path.
      (WebCore::BoxShape::buildDisplayPaths): Create the applicable [margin/padding/raw] shapes.
      * rendering/shapes/BoxShape.h:
      * rendering/shapes/PolygonShape.cpp:
      (WebCore::addPolygon): Add a set of vertices as a polygon to the path.
      (WebCore::PolygonShape::buildDisplayPaths): Create the applicable [margin/padding/raw] shapes.
      * rendering/shapes/PolygonShape.h:
      * rendering/shapes/RasterShape.h:
      (WebCore::RasterShape::buildDisplayPaths): Ditto.
      * rendering/shapes/RectangleShape.cpp:
      (WebCore::RectangleShape::buildDisplayPaths): Ditto.
      * rendering/shapes/RectangleShape.h:
      * rendering/shapes/Shape.h:
      
      LayoutTests:
      
      Test that the shape and margin-shape are properly passed to the Inspector Overlay.
      Arcs for rounded rectangles, circles, and ellipses are approximated using the same
      bezier curve method present in Path.cpp.
      
      * inspector-protocol/model/highlight-shape-outside-margin.html: Added.
      * inspector-protocol/model/highlight-shape-outside.html: Updating shape-outside info model.
      * inspector-protocol/resources/shape-info-helper.js: Adding utilities to compare alternate
        path formats.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160451 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0c34d471
    • mario.prada@samsung.com's avatar
      [ATK] Expose accessibility objects WAI-ARIA landmark roles · e10ceaa5
      mario.prada@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125584
      
      Reviewed by Chris Fleizach.
      
      Source/WebCore:
      
      Exposed accessibility objects with landmark roles with the proper
      AtkRole, to be provided by the next stable release of ATK.
      
      * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
      (webkitAccessibleGetAttributes):
      (atkRole):
      
      Tools:
      
      Add mappings to DRT & WKTR for landmark roles.
      
      * DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
      (AccessibilityUIElement::role):
      * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
      (WTR::AccessibilityUIElement::role):
      * gtk/jhbuild.modules:
      
      LayoutTests:
      
      Update test to unskip landmark elements and update expectations.
      
      * platform/gtk/accessibility/roles-exposed-expected.txt:
      * platform/gtk/accessibility/roles-exposed.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160450 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e10ceaa5
    • andersca@apple.com's avatar
      Remove platform specific gunk from WebURLRequest and WebURLResponse · 73426e16
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125589
      
      Reviewed by Andreas Kling.
      
      * Shared/API/c/WKURLRequest.cpp:
      (WKURLRequestCopyURL):
      * Shared/API/c/mac/WKURLRequestNS.mm:
      (WKURLRequestCopyNSURLRequest):
      * Shared/API/c/mac/WKURLResponseNS.mm:
      (WKURLResponseCopyNSURLResponse):
      * Shared/WebURLRequest.cpp:
      * Shared/WebURLRequest.h:
      * Shared/WebURLResponse.h:
      * Shared/mac/WebURLRequestMac.mm: Removed.
      * Shared/mac/WebURLResponseMac.mm: Removed.
      * UIProcess/WebInspectorProxy.cpp:
      (WebKit::isMainInspectorPage):
      * WebKit2.xcodeproj/project.pbxproj:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160449 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      73426e16
    • commit-queue@webkit.org's avatar
      [GTK] Avoid double quotations when passing parameters to valgrind in gtk.py · a663abfc
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125441
      
      Patch by Alejandro G. Castro <alex@igalia.com> on 2013-12-11
      Reviewed by Martin Robinson.
      
      Just avoid the double quotations when building the parameter
      because some versions of valgrind are not handling it correctly.
      
      * Scripts/webkitpy/port/gtk.py:
      (GtkPort.setup_environ_for_server):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160448 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a663abfc
    • mario.prada@samsung.com's avatar
      [ATK] Add new layout test to check ATK roles in a central place · 43535967
      mario.prada@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125525
      
      Reviewed by Chris Fleizach.
      
      New test added, with some skipped tests already present in
      platform/mac/accessibility/role-subrole-roledescription.html (this
      test is based in that one) as well as some issues specific to ATK
      that have been reported in bugs, for traceability.
      
      * platform/gtk/accessibility/roles-exposed-expected.txt: Added.
      * platform/gtk/accessibility/roles-exposed.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160447 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      43535967
    • zandobersek@gmail.com's avatar
      [GTK] Enable Battery Status API · 5046e133
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125453
      
      Reviewed by Martin Robinson.
      
      Tools: 
      
      * Scripts/webkitperl/FeatureList.pm: Enable the Battery Status API feature for the GTK port.
      
      LayoutTests: 
      
      * platform/gtk/TestExpectations: Remove expectations for the Battery Status API layout tests
      since all the tests pass now that the feature is enabled.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160446 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5046e133
    • zandobersek@gmail.com's avatar
      [GTK][WK2] Add the WebKitBatteryProvider class · 47ae10ce
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=115720
      
      Reviewed by Martin Robinson.
      
      Source/WebKit2: 
      
      This patch adds the WebKitBatteryProvider class which sets up a BatteryProviderUPower instance,
      controlling the provider's activity when instrumented to do so by the WebBatteryManagerProxy
      and relaying the battery status updates from the battery provider to the battery manager.
      
      * GNUmakefile.list.am: Add the build targets for the new source files.
      * UIProcess/API/gtk/WebKitBatteryProvider.cpp: Added.
      (toBatteryProvider): A helper inline method that casts the client info to the battery provider instance.
      (startUpdatingCallback): Relays the instruction to the WebKitBattery instance.
      (stopUpdatingCallback): Ditto.
      (WebKitBatteryProvider::create):
      (WebKitBatteryProvider::WebKitBatteryProvider): Set up a WKBatteryProvider and set it to the passed-in battery manager.
      (WebKitBatteryProvider::~WebKitBatteryProvider): Force the BatteryProviderUPower to stop updating.
      (WebKitBatteryProvider::startUpdating): Relays the instruction to the BatteryProviderUPower instance.
      (WebKitBatteryProvider::stopUpdating): Ditto.
      (WebKitBatteryProvider::notifyBatteryStatusUnavailable): Update the battery manager with the new status that
      has the default values that are to be used when the implementation cannot determine the battery status (as per
      the Battery Status API specification).
      (WebKitBatteryProvider::notifyBatteryStatusUpdated): Update the battery status.
      * UIProcess/API/gtk/WebKitBatteryProvider.h: Added.
      (WebKitBatteryProvider): Define the WebKitBatteryProvider reference-counted interface that also inherits from the
      BatteryProviderUPowerClient interface.
      * UIProcess/API/gtk/WebKitWebContext.cpp:
      (_WebKitWebContextPrivate): Add a WebKitBatteryProvider member variable to the struct.
      (createDefaultWebContext): Create a new battery provider when initializing the default web context.
      
      Tools: 
      
      * gtk/generate-gtkdoc:
      (get_webkit2_options): Ignore the WebKitBatteryProvider source files when generating the documentation.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160445 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      47ae10ce
    • zandobersek@gmail.com's avatar
      [GTK] Add a UPower-based BatteryProvider · 0414f142
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=115719
      
      Reviewed by Martin Robinson.
      
      Source/Platform: 
      
      * GNUmakefile.am: Add the Source/WebCore/platform/glib directory to the list of directories searched
      for header inclusion. Add the upower-glib dependency CFLAGS to the list of libPlatform's CPPFLAGS.
      
      Source/WebCore: 
      
      Introduce the BatteryProviderUPower, a provider of the system's battery status that produces the information
      using the upower-glib library.
      
      The BatteryProviderUPower creates a new UPower client when the provider should start emitting updates and hooks
      up to device alteration signals. These only fire recalculation of the battery status when a battery device is altered.
      
      When recalculating, every battery device is taken into account, accumulating the energy capacities when both empty
      and full, the current rate of energy charging/discharging, and the battery status (whether the device is charging or
      discharging). This gives a set of data that covers the overall battery status of the system.
      
      This data is then used to calculate the battery status as perceived by the WebCore implementation. Charging is determined
      by examining the integral sign of the current combined energy rate. Charging and discharging times are calculated, when
      appropriate, by dividing the chargable/dischargable capacity with the current combined energy rate. The battery level is
      calculated by dividing the current energy capacity with the full energy capacity (i.e. the combined capacity of all
      the batteries that the system possesses). The status is (indirectly) passed onto BatteryManager by invoking the
      updateBatteryStatus method on the client, with the first parameter representing the battery charging/discharging state,
      the second parameter representing the time left until the battery is fully charged (when charging) or fully
      depleted (when discharging), and the third parameter representing the current battery level.
      
      Whenever the implementation cannot provide any information about the battery status of the system, the client's
      updateBatteryStatus method is invoked with the first parameter reporting the unavailability of any information
      about the battery status. The other two parameters can be omitted as they default to 0 when not given and are neither
      available nor useful in such circumstances. The client should handle such an update by reporting the 'default' battery
      status - charging, the battery level being at 1.0 and both the charging and discharging time having the value of
      the positive infinity (as per the Battery Status API specification).
      
      The implementation is heavily inspired by a similar approach to calculating battery status in GNOME Settings Daemon.
      
      No new tests - no new functionality. The feature is not yet enabled. When enabled, the relevant tests pass.
      
      * GNUmakefile.list.am: Add the BatteryProviderUPower(Client) build targets.
      * platform/glib/BatteryProviderUPower.cpp: Added.
      (powerDeviceAlterationCallback):
      (BatteryProviderUPower::BatteryProviderUPower):
      (BatteryProviderUPower::startUpdating):
      (BatteryProviderUPower::stopUpdating):
      (BatteryProviderUPower::updateBatteryStatus):
      * platform/glib/BatteryProviderUPower.h: Added.
      (WebCore):
      (BatteryProviderUPower):
      * platform/glib/BatteryProviderUPowerClient.h: Added.
      (WebCore):
      (BatteryProviderUPowerClient):
      
      Source/WebKit/gtk: 
      
      * GNUmakefile.am: Link the libwebkigtk library against the upower-glib library.
      
      Source/WebKit2: 
      
      * GNUmakefile.am: Link the libwebkit2gtk library against the upower-glib library.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160444 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0414f142