1. 23 Dec, 2013 3 commits
  2. 22 Dec, 2013 11 commits
    • commit-queue@webkit.org's avatar
      [WK2][SOUP] WebContext::allowSpecificHTTPSCertificateForHost does not work... · 1d81262a
      commit-queue@webkit.org authored
      [WK2][SOUP] WebContext::allowSpecificHTTPSCertificateForHost does not work correctly when m_usesNetworkProcess is false
      https://bugs.webkit.org/show_bug.cgi?id=125564
      
      Reviewed Carlos Garcia Campos.
      
      WebContext::allowSpecificHTTPSCertificateForHost should send
      AllowSpecificHTTPSCertificateForHost to the web process when
      m_usesNetworkProcess is false. Also we shouldn't guard
      WebProcess::allowSpecificHTTPSCertificateForHost with
      !ENABLE(NETWORK_PROCESS) because we need this method when
      m_usesNetworkProcess is false.
      
      Patch by Kwang Yul Seo <skyul@company100.net> on 2013-12-22
      
      * UIProcess/WebContext.cpp:
      (WebKit::WebContext::allowSpecificHTTPSCertificateForHost):
      * WebProcess/WebProcess.h:
      * WebProcess/WebProcess.messages.in:
      * WebProcess/soup/WebProcessSoup.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160986 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1d81262a
    • mrobinson@webkit.org's avatar
      [GTK][CMake] Integrate GResource for inspector files (and others?) · aa635b53
      mrobinson@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125569
      
      Reviewed by Gustavo Noronha Silva.
      
      Source/WebInspectorUI:
      
      * GNUmakefile.am: Use the new generation script instead of generating with
      shell scripting in the makefile.
      
      Source/WebKit2:
      
      * GNUmakefile.am: Use the newly added static WebKit2InspectorGResourceBundle.xml
      instead of generating the same file each time.
      * PlatformGTK.cmake: Add support for building the GResource bundles into WebKit2.
      * UIProcess/API/gtk/WebKit2InspectorGResourceBundle.xml: Added.
      
      Tools:
      
      * gtk/generate-inspector-gresource-manifest.py: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160985 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aa635b53
    • mrobinson@webkit.org's avatar
      Small build fix for GTK+ with the CMake build · 1fa0e27c
      mrobinson@webkit.org authored
      * CMakeLists.txt: Remove duplicate include directory and add missing directories
      necessary for GTK+.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160984 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1fa0e27c
    • benjamin@webkit.org's avatar
      Create a skeleton for CSS Selector code generation · 182c19a4
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=126044
      
      Source/JavaScriptCore: 
      
      Reviewed by Antti Koivisto and Gavin Barraclough.
      
      * assembler/LinkBuffer.h:
      Add a new owner UID for code compiled for CSS.
      Export the symbols needed to link code from WebCore.
      
      Source/WebCore: 
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-22
      Reviewed by Antti Koivisto and Gavin Barraclough.
      
      Add CSSCompiler, which provides the basic infrastructure to compile
      CSS Selectors on x86_64.
      
      Compilation happens in two phases.
      1) The various matching and relation of each CSSSelector is aggregated into units
         matching a single element: SelectorFragment.
         SelectorFragment also knows about the relations between different fragments,
         and contains all the information to generate the code for a particular element.
      2) The compiler then goes over the fragments, and generate code based on the information
         of each fragment.
      
      It the current state, SelectorCompiler only compiles the tag matching selectors and
      any of the relation between selectors.
      
      Depending on the relation and position of a fragment, failure on traversal or matching
      does not necessarily causes the complete selector. A failure can cause matching to
      resume from the parent or the sibling of a previously visisted node.
      The implementation of this is done through the BacktrackingAction. In case of failure,
      the next starting state is setup and the program counter jumps back to the appropriate
      starting point.
      
      When backtracking, the method used to save the starting point depends on the type
      of backtracking.
      The child/parent relation (">") is very common so it uses an additional register to keep
      the next starting point (m_descendantBacktrackingStart).
      The indirect sibling relation ("~") is much less common and uses the stack to save
      the next starting point.
      
      * WebCore.xcodeproj/project.pbxproj:
      * cssjit/SelectorCompiler.cpp: Added.
      (WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
      (WebCore::SelectorCompiler::compileSelector):
      (WebCore::SelectorCompiler::fragmentRelationForSelectorRelation):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::compile):
      (WebCore::SelectorCompiler::updateChainStates):
      (WebCore::SelectorCompiler::isFirstAncestor):
      (WebCore::SelectorCompiler::isFirstAdjacent):
      (WebCore::SelectorCompiler::isAfterChildRelation):
      (WebCore::SelectorCompiler::solveBacktrackingAction):
      (WebCore::SelectorCompiler::requiresAdjacentTail):
      (WebCore::SelectorCompiler::requiresDescendantTail):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::computeBacktrackingInformation):
      (WebCore::SelectorCompiler::testIsElementFlagOnNode):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateWalkToParentElement):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateParentElementTreeWalker):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateAncestorTreeWalker):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateWalkToPreviousAdjacent):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateDirectAdjacentTreeWalker):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateIndirectAdjacentTreeWalker):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::markParentElementIfResolvingStyle):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::linkFailures):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateAdjacentBacktrackingTail):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateDescendantBacktrackingTail):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateBacktrackingTailsIfNeeded):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
      (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasTagName):
      * cssjit/SelectorCompiler.h: Added.
      (WebCore::SelectorCompilationStatus::SelectorCompilationStatus):
      (WebCore::SelectorCompilationStatus::operator Status):
      (WebCore::SelectorCompiler::simpleSelectorCheckerFunction):
      (WebCore::SelectorCompiler::selectorCheckerFunctionWithCheckingContext):
      * dom/Element.cpp:
      (WebCore::Element::setChildrenAffectedByDirectAdjacentRules):
      (WebCore::Element::setChildrenAffectedByForwardPositionalRules):
      * dom/Element.h:
      (WebCore::Element::tagQNameMemoryOffset):
      (WebCore::Element::setChildrenAffectedByForwardPositionalRules):
      * dom/Node.h:
      (WebCore::Node::parentNodeMemoryOffset):
      (WebCore::Node::previousSiblingMemoryOffset):
      (WebCore::Node::nodeFlagsMemoryOffset):
      (WebCore::Node::flagIsElement):
      * dom/QualifiedName.h:
      (WebCore::QualifiedName::QualifiedNameImpl::localNameMemoryOffset):
      (WebCore::QualifiedName::QualifiedNameImpl::namespaceMemoryOffset):
      (WebCore::QualifiedName::implMemoryOffset):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160983 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      182c19a4
    • mihnea@adobe.com's avatar
      [CSSRegions] Crash when trying to select content from invalid region · 0dee921d
      mihnea@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126113
      
      Reviewed by Antti Koivisto.
      
      Source/WebCore:
      
      After fix for https://bugs.webkit.org/show_bug.cgi?id=120769, positionForPoint for a region attempts to use the associated named flow to perform its task.
      However, this should happen only when the region is valid. If the region is invalid, part of a dependency cycle, positionForPoint should behave as usual
      for a block instead of a region, otherwise it may run into an infinite loop due to cyclic dependencies and a crash will occur.
      
      This patch ensures that positionForPoint region specifie behaviour is followed only if the region is valid - not part of a dependency cycle.
      
      Test: fast/regions/selection/invalid-region-selection-crash.html
      
      * rendering/RenderRegion.cpp:
      (WebCore::RenderRegion::positionForPoint):
      
      LayoutTests:
      
      * fast/regions/selection/invalid-region-selection-crash-expected.txt: Added.
      * fast/regions/selection/invalid-region-selection-crash.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160979 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0dee921d
    • mihnea@adobe.com's avatar
      [CSSRegions] Clean-up selection tests a bit · 74fdf536
      mihnea@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126135
      
      Reviewed by Dirk Schulze.
      
      Move function clearSelection in helper.js. Combine checkResult() from position-for-point* and position-for-point-1*
      into a single function, checkSelectionResult() and  move it into helper.js too.
      
      * fast/regions/resources/helper.js:
      * fast/regions/selection/position-for-point-1-vert-lr.html:
      * fast/regions/selection/position-for-point-1-vert-rl.html:
      * fast/regions/selection/position-for-point-1.html:
      * fast/regions/selection/position-for-point-vert-lr.html:
      * fast/regions/selection/position-for-point-vert-rl.html:
      * fast/regions/selection/position-for-point.html:
      * fast/regions/selection/selecting-text-through-different-region-flows.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160978 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      74fdf536
    • barraclough@apple.com's avatar
      URTBF after r160971 to try to make EFL build again. · e374ccaa
      barraclough@apple.com authored
      Patch by Csaba Osztrogonác <ossy@webkit.org> on 2013-12-22
      
      * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
      (WebKit::internalError):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160977 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e374ccaa
    • ossy@webkit.org's avatar
      Last URTBF after r160971 to make EFL build happy. · 541d204b
      ossy@webkit.org authored
      * TestWebKitAPI/efl/PlatformWebView.cpp:
      * WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160976 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      541d204b
    • ossy@webkit.org's avatar
      URTBF after r160971 to try to make EFL build again. · c6aac9e8
      ossy@webkit.org authored
      * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
      (WebKit::internalError):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160975 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6aac9e8
    • carlosgc@webkit.org's avatar
      Unreviewed. Fix GTK+ build after r160971 and r160969. · 87200f0e
      carlosgc@webkit.org authored
      * GNUmakefile.list.am:
      * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
      (webkit_file_chooser_request_select_files):
      * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
      (didReceiveWebViewMessageFromInjectedBundle):
      * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
      (webkitURISchemeRequestCreate):
      * UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
      * UIProcess/API/gtk/WebKitWebResource.cpp:
      (webkit_web_resource_get_data):
      * UIProcess/soup/WebSoupRequestManagerClient.h:
      * WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:
      (WebKit::internalError):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160974 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      87200f0e
    • krit@webkit.org's avatar
      Start refactoring Filter code to reuse CachedSVGDocument for clipPath · 5cc02d17
      krit@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=126069
      
      Reviewed by Andreas Kling.
      
      Smaller refactoring of the CSS filter style resolver code. Previously the code
      requested the FilterOperations list from RenderStyle and compared the content
      in this list with an internal map. Then the resource loading was triggered.
      With the refactoring we do not request the list from RenderStyle anymore but
      rely on the hash map data entirely.
      
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::loadPendingSVGDocuments):
      * platform/graphics/filters/FilterOperation.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160973 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5cc02d17
  3. 21 Dec, 2013 10 commits
    • ryuan.choi@samsung.com's avatar
      Unreviewed build fix attempt on EFL port after r160971 and r160969 · 0b6039c2
      ryuan.choi@samsung.com authored
      * CMakeLists.txt:
      * UIProcess/soup/WebSoupRequestManagerClient.cpp:
      (WebKit::WebSoupRequestManagerClient::didReceiveURIRequest):
      * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
      (WebKit::WebSoupRequestManagerProxy::didReceiveURIRequest):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160972 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0b6039c2
    • weinig@apple.com's avatar
      [WK2] Rename WebError to API::Error · cf55375b
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126125
      
      Reviewed by Anders Carlsson.
      
      * Shared/API/c/WKError.cpp:
      (WKErrorGetTypeID):
      (WKErrorCopyWKErrorDomain):
      * Shared/API/c/WKSharedAPICast.h:
      (WebKit::toAPI):
      * Shared/API/c/cf/WKErrorCF.cpp:
      (WKErrorCreateWithCFError):
      * Shared/APIError.cpp: Copied from Source/WebKit2/Shared/WebError.cpp.
      (API::Error::webKitErrorDomain):
      (API::Error::encode):
      (API::Error::decode):
      * Shared/APIError.h: Copied from Source/WebKit2/Shared/WebError.h.
      (API::Error::create):
      (API::Error::domain):
      (API::Error::failingURL):
      (API::Error::localizedDescription):
      (API::Error::Error):
      * Shared/Cocoa/WKNSError.h:
      (WebKit::wrapper):
      * Shared/Cocoa/WKNSError.mm:
      (-[WKNSError _web_createTarget]):
      * Shared/UserData.cpp:
      (WebKit::UserData::encode):
      (WebKit::UserData::decode):
      * Shared/UserMessageCoders.h:
      (WebKit::UserMessageEncoder::baseEncode):
      (WebKit::UserMessageDecoder::baseDecode):
      * Shared/WebError.cpp: Removed.
      * Shared/WebError.h: Removed.
      * UIProcess/AutoCorrectionCallback.h:
      (WebKit::AutocorrectionDataCallback::invalidate):
      * UIProcess/GenericCallback.h:
      (WebKit::VoidCallback::invalidate):
      (WebKit::GenericCallback::invalidate):
      (WebKit::ComputedPagesCallback::invalidate):
      (WebKit::ImageCallback::invalidate):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::printFinishedCallback):
      * UIProcess/WebPageProxy.h:
      (WebKit::ValidateCommandCallback::invalidate):
      (WebKit::GestureCallback::invalidate):
      (WebKit::TouchesCallback::invalidate):
      * WebKit2.xcodeproj/project.pbxproj:
      * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
      * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
      * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:
      (WebKit::blockedError):
      (WebKit::cannotShowURLError):
      (WebKit::interruptedForPolicyChangeError):
      (WebKit::cannotShowMIMETypeError):
      (WebKit::pluginWillHandleLoadError):
      (WebKit::internalError):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160971 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cf55375b
    • aestes@apple.com's avatar
      [Mac] Soft-link WebContentAnalysis.framework · e827a0ac
      aestes@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126102
      
      Reviewed by Dan Bernstein.
      
      * Configurations/WebCore.xcconfig: There's no need to modify LDFLAGS
      now that we don't hard link against WebContentAnalysis.framework.
      * WebCore.xcodeproj/project.pbxproj: Removed
      WebContentAnalysis.framework from the 'Link Binary with Libraries'
      build phase.
      * platform/mac/ContentFilterMac.mm: Soft-linked
      WebContentAnalysis.framework and the WebFilterEvaluator @class.
      (WebCore::ContentFilter::ContentFilter): Called getWebFilterEvaluatorClass().
      (WebCore::ContentFilter::isEnabled): Ditto.
      * platform/mac/SoftLinking.h: Added an implementation of
      SOFT_LINK_PRIVATE_FRAMEWORK().
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160970 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e827a0ac
    • weinig@apple.com's avatar
      [WK2] Rename WebURL to API::URL · 7c6c01b6
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126100
      
      Reviewed by Anders Carlsson.
      
      * Shared/API/c/WKSharedAPICast.h:
      (WebKit::toURLRef):
      (WebKit::toCopiedURLAPI):
      * Shared/API/c/WKURL.cpp:
      (WKURLGetTypeID):
      (WKURLCreateWithUTF8CString):
      (WKURLCreateWithBaseURL):
      * Shared/API/c/cf/WKURLCF.mm:
      (WKURLCreateWithCFURL):
      * Shared/APIURL.h: Copied from Source/WebKit2/Shared/WebURL.h.
      (API::URL::create):
      (API::URL::string):
      (API::URL::host):
      (API::URL::protocol):
      (API::URL::path):
      (API::URL::lastPathComponent):
      (API::URL::encode):
      (API::URL::decode):
      (API::URL::URL):
      * Shared/Cocoa/WKNSURL.h:
      (WebKit::wrapper):
      * Shared/Cocoa/WKNSURL.mm:
      (-[WKNSURL _web_createTarget]):
      * Shared/Plugins/Netscape/PluginInformation.cpp:
      (WebKit::createPluginInformationDictionary):
      * Shared/UserData.cpp:
      (WebKit::UserData::encode):
      (WebKit::UserData::decode):
      * Shared/UserMessageCoders.h:
      (WebKit::UserMessageEncoder::baseEncode):
      (WebKit::UserMessageDecoder::baseDecode):
      * Shared/WebArchiveResource.h:
      * Shared/WebURL.h: Removed.
      * UIProcess/WebFrameProxy.cpp:
      (WebKit::WebFrameProxy::getResourceData):
      * UIProcess/WebFrameProxy.h:
      * UIProcess/WebIconDatabase.cpp:
      (WebKit::WebIconDatabase::didChangeIconForPageURL):
      (WebKit::WebIconDatabase::notifyIconDataReadyForPageURL):
      * UIProcess/WebIconDatabaseClient.cpp:
      (WebKit::WebIconDatabaseClient::didChangeIconForPageURL):
      (WebKit::WebIconDatabaseClient::iconDataReadyForPageURL):
      * UIProcess/WebIconDatabaseClient.h:
      * UIProcess/WebOpenPanelResultListenerProxy.cpp:
      (WebKit::WebOpenPanelResultListenerProxy::chooseFiles):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::getResourceDataFromFrame):
      * UIProcess/WebPageProxy.h:
      * WebKit2.xcodeproj/project.pbxproj:
      * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160969 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7c6c01b6
    • antti@apple.com's avatar
      Unreviewed, rolling out r160916. · 717d4456
      antti@apple.com authored
      http://trac.webkit.org/changeset/160916
      https://bugs.webkit.org/show_bug.cgi?id=126073
      
      Roll out a temporary fix. The underlying issue was fixed.
      
      * accessibility/AccessibilityRenderObject.cpp:
      (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
      (WebCore::AccessibilityRenderObject::~AccessibilityRenderObject):
      (WebCore::AccessibilityRenderObject::detach):
      (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
      * accessibility/AccessibilityRenderObject.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      717d4456
    • antti@apple.com's avatar
      Figure out if node is focusable without requiring renderer · f02be1e8
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126118
      
      Reviewed by Andreas Kling.
      
      * dom/Element.cpp:
      (WebCore::Element::computedStyle):
              
          Use inDocument() test instead of the attached() test. We can compute style for anything that
          is in document.
      
      * dom/Node.cpp:
      (WebCore::Node::isContentEditable):
      (WebCore::Node::isContentRichlyEditable):
      (WebCore::Node::hasEditableStyle):
              
          Use computedStyle instead of getting the style from renderer. Computed style gets constructed
          on demand if renderer does not exist. If it does then the existing style is used.
      
      (WebCore::Node::isEditableToAccessibility):
      (WebCore::Node::canStartSelection):
      (WebCore::Node::isRootEditableElement):
      (WebCore::Node::rootEditableElement):
      * dom/Node.h:
      (WebCore::Node::hasEditableStyle):
      (WebCore::Node::hasRichlyEditableStyle):
              
          Renamed from rendererIsEditable since these no longer require renderer.
      
      (WebCore::HTMLElement::supportsFocus):
              
          Stop calling updateStyleIfNeeded() and forcing render tree construction.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160966 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f02be1e8
    • carlosgc@webkit.org's avatar
      [GTK] Test /webkit2/WebKitWebResource/mime-type fails when run after... · b37ca71d
      carlosgc@webkit.org authored
      [GTK] Test /webkit2/WebKitWebResource/mime-type fails when run after /webkit2/WebKitWebView/resources
      https://bugs.webkit.org/show_bug.cgi?id=126119
      
      Reviewed by Martin Robinson.
      
      The problem is that when the blank.ico resource is loaded from the
      disk cache, the mime type is null, because the soup cache doesn't
      cache sniffed mime types. This doesn't happen when a resource is
      loaded form the memory cache, because the ResourceResponse is
      cached, not only the headers. I think the disk cache should also
      cache the sniffed content type, but that needs to be done in
      soup. For now we can workaround the issue in the unit test by
      making sure that resources that can be cached, also include the
      Content-Type header, this way the mime type won't be sniffed and
      it will be cached as a HTTP header in the disk cache.
      
      * UIProcess/API/gtk/tests/TestResources.cpp:
      (serverCallback): Add Content-Type header for resources that can
      be cached.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160965 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b37ca71d
    • carlosgc@webkit.org's avatar
      REGRESSION(r160909): [GTK] Tests /webkit2/WebKitWebView/default-menu and... · 506c4f2a
      carlosgc@webkit.org authored
      REGRESSION(r160909): [GTK] Tests /webkit2/WebKitWebView/default-menu and /webkit2/WebKitSettings/webkit-settings fail
      https://bugs.webkit.org/show_bug.cgi?id=126117
      
      Reviewed by Martin Robinson.
      
      In r160909 the fullscreen setting default value was changed, but
      the unit tests relaying on the default value were not updated
      accordingly.
      
      * UIProcess/API/gtk/tests/TestContextMenu.cpp:
      * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
      (testWebKitSettings):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160964 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      506c4f2a
    • carlosgc@webkit.org's avatar
      Unreviewed. Add myself to some more watch lists. · 72ab41bd
      carlosgc@webkit.org authored
      * Scripts/webkitpy/common/config/watchlist: Watch also soup, gst
      and binding scripts patches.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160962 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      72ab41bd
    • carlosgc@webkit.org's avatar
      [SOUP] ResourceHandleSoup should use async client callbacks when client uses async callbacks · 6e4813a0
      carlosgc@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=126006
      
      Reviewed by Martin Robinson.
      
      This fixes WebKit2 loader client unit tests when using the network
      process.
      
      * platform/network/ResourceHandle.cpp:
      * platform/network/soup/ResourceHandleSoup.cpp:
      (WebCore::doRedirect): Call willSendRequestAsync on the client
      when usesAsyncCallbacks returns true.
      (WebCore::nextMultipartResponsePartCallback): Call
      didReceiveResponseAsync on the client when usesAsyncCallbacks
      returns true.
      (WebCore::sendRequestCallback): Ditto.
      (WebCore::ResourceHandle::continueWillSendRequest): Empty
      implementation for now because the default one asserts.
      (WebCore::ResourceHandle::continueDidReceiveResponse): Ditto.
      (WebCore::ResourceHandle::continueShouldUseCredentialStorage): Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160961 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6e4813a0
  4. 20 Dec, 2013 16 commits
    • andersca@apple.com's avatar
      Replace yield() and pauseBriefly() with std::this_thread::yield() · 6bdbc727
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126105
      
      Reviewed by Sam Weinig.
      
      Source/WebCore:
      
      * platform/sql/SQLiteDatabase.cpp:
      (WebCore::SQLiteDatabase::interrupt):
      
      Source/WTF:
      
      * wtf/ByteSpinLock.h:
      (WTF::ByteSpinLock::lock):
      * wtf/Threading.h:
      * wtf/ThreadingPrimitives.h:
      * wtf/ThreadingPthreads.cpp:
      * wtf/ThreadingWin.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160959 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6bdbc727
    • rniwa@webkit.org's avatar
      Assert that RootInlineBox::setLineBreakInfo should is never called on a... · 231a3430
      rniwa@webkit.org authored
      Assert that RootInlineBox::setLineBreakInfo should is never called on a RenderInline without line boxes
      https://bugs.webkit.org/show_bug.cgi?id=126101
      
      Reviewed by Simon Fraser.
      
      Merge assertions added in https://chromium.googlesource.com/chromium/blink/+/716ac74fd475b581d69c0aa8ec2d806201c3a420
      
      The code change was not merged since we never hit the added assertion on the attached test case in WebKit.
      
      * rendering/RootInlineBox.cpp:
      (WebCore::RootInlineBox::setLineBreakInfo):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160957 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      231a3430
    • commit-queue@webkit.org's avatar
      Web Inspector: Remove the references to Node in InjectedScript · c15383f2
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=126091
      
      Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-12-20
      Reviewed by Timothy Hatcher.
      
      Remove the last DOM references from InjectedScript so that
      InjectedScript can move down into JavaScriptCore. The only
      remaining references were to Nodes, which are all just thin
      wrappers around existing functions. Move Node / JSNode (JSValue)
      conversion into InspectorDOMAgent, where it was used.
      
      No new tests, no observable change in functionality.
      
      * bindings/js/JSInjectedScriptHostCustom.cpp:
      * inspector/InjectedScript.cpp:
      (WebCore::InjectedScript::inspectObject):
      (WebCore::InjectedScript::releaseObject):
      * inspector/InjectedScript.h:
      * inspector/InjectedScriptHost.h:
      * inspector/InjectedScriptSource.js:
      * inspector/InspectorDOMAgent.cpp:
      (WebCore::InspectorDOMAgent::focusNode):
      (WebCore::InspectorDOMAgent::highlightNode):
      (WebCore::InspectorDOMAgent::requestNode):
      (WebCore::InspectorDOMAgent::nodeForObjectId):
      (WebCore::InspectorDOMAgent::resolveNode):
      (WebCore::InspectorDOMAgent::scriptValueAsNode):
      (WebCore::InspectorDOMAgent::nodeAsScriptValue):
      * inspector/InspectorDOMAgent.h:
      * inspector/PageConsoleAgent.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160955 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c15383f2
    • andersca@apple.com's avatar
      Speed up case folding for 8-bit strings · 649f80eb
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126098
      
      Reviewed by Geoffrey Garen.
      
      Add a case folding lookup table for 8-bit strings and use it instead of calling down to u_foldCase.
      On a simple microbenchmark using a lookup table is about 15x faster.
      
      * wtf/text/StringHash.h:
      (WTF::CaseFoldingHash::foldCase):
      * wtf/text/StringImpl.cpp:
      (WTF::equalIgnoringCase):
      * wtf/text/StringImpl.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160954 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      649f80eb
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r160941. · 46696507
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/160941
      https://bugs.webkit.org/show_bug.cgi?id=126095
      
      Doesn't handle subpixel layout being disabled (Requested by
      smfr on #webkit).
      
      * gdb/webkit.py:
      (JSCJSStringPrinter.to_string):
      (add_pretty_printers):
      * lldb/lldb_webkit.py:
      (WTFMediaTime_SummaryProvider):
      (WTFStringProvider.to_string):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160953 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      46696507
    • ljaehun.lim@samsung.com's avatar
      Unreviewed build fix after r160939 · d5ff8382
      ljaehun.lim@samsung.com authored
      Add ENABLE(CUSTOM_PROTOCOLS) guard.
      
      * UIProcess/WebContext.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160952 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d5ff8382
    • mmaxfield@apple.com's avatar
      Faster implementation of text-decoration-skip: ink · 72be4bbc
      mmaxfield@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125718
      
      Reviewed by Simon Fraser.
      
      Source/WebCore:
      
      This new implementation of text-decoration-skip: ink extracts
      each glyph into a path, then decomposes each path into a series
      of contours. It then intersects each contour with the top and
      bottom of the underline (by approximating the contour with a line).
      It then draws underlines in between these intersection regions.
      
      Tests for text-decoration-skip: ink already exist in
      fast/css3-text/css3-text-decoration/text-decoration-skip
      
      * platform/graphics/Font.h: Signature of new function
      * platform/graphics/mac/FontMac.mm:
      (WebCore::GlyphIterationState::GlyphIterationState): Persistent
      between calls to findPathIntersections
      (WebCore::findIntersectionPoint): Calculates an intersection point
      between two lines
      (WebCore::findPathIntersections): Called by CGPathApply to find
      intersections of each contour
      (WebCore::Font::intersectionPoints): Function to get the places
      where an underline would intersect a TextRun.
      * rendering/InlineTextBox.cpp:
      (WebCore::compareTuples): Used for sorting intersection ranges
      (WebCore::translateIntersectionPointsToSkipInkBoundaries): Converts
      a sequence of intersection points to the locations where
      text-decoration-skip: ink should draw underlines
      (WebCore::drawSkipInkUnderline): Draws a sequence of short underlines
      (WebCore::InlineTextBox::paintDecoration):
      * rendering/TextPainter.cpp:
      (WebCore::TextPainter::intersectionPoints): Calls Font::intersectionPoints
      * rendering/TextPainter.h:
      
      Source/WTF:
      
      This creates a new preprocessor define, CSS3_TEXT_DECORATION_SKIP_INK,
      which enables the use of the text-decoration-skip: ink CSS value.
      Creating this new value simplifies the logic about when to enable the
      codepath for this CSS value.
      
      * wtf/Platform.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160951 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      72be4bbc
    • simon.fraser@apple.com's avatar
      Try to fix the Windows build. · f7167502
      simon.fraser@apple.com authored
      * WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160948 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f7167502
    • joepeck@webkit.org's avatar
      Web Inspector: Give the CommandLineAPIModule its own Host object, making... · b7b8b6b6
      joepeck@webkit.org authored
      Web Inspector: Give the CommandLineAPIModule its own Host object, making InjectedScriptHost viable for a JS Context
      https://bugs.webkit.org/show_bug.cgi?id=126082
      
      Reviewed by Timothy Hatcher.
      
      Extract CommandLineAPIHost from InjectedScriptHost. The command line API contained
      a bunch of DOM specific JavaScript that would not be suitable for a pure JavaScript
      environment. Now that the DOM related code is in this WebCore only module, give this
      module a host object that WebCore will provide.
      
      No new tests, no observable change in functionality.
      
      * CMakeLists.txt:
      * DerivedSources.cpp:
      * DerivedSources.make:
      * GNUmakefile.list.am:
      * UseJSC.cmake:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/js/JSBindingsAllInOne.cpp:
      Add new files.
      
      * bindings/js/JSCommandLineAPIHostCustom.cpp: Added.
      (WebCore::JSCommandLineAPIHost::inspectedObject):
      (WebCore::getJSListenerFunctions):
      (WebCore::JSCommandLineAPIHost::getEventListeners):
      (WebCore::JSCommandLineAPIHost::inspect):
      (WebCore::JSCommandLineAPIHost::databaseId):
      (WebCore::JSCommandLineAPIHost::storageId):
      * bindings/js/JSInjectedScriptHostCustom.cpp:
      * inspector/CommandLineAPIHost.cpp: Copied from Source/WebCore/inspector/InjectedScriptHost.cpp.
      (WebCore::CommandLineAPIHost::create):
      (WebCore::CommandLineAPIHost::CommandLineAPIHost):
      (WebCore::CommandLineAPIHost::~CommandLineAPIHost):
      (WebCore::CommandLineAPIHost::disconnect):
      (WebCore::CommandLineAPIHost::inspectImpl):
      (WebCore::CommandLineAPIHost::getEventListenersImpl):
      (WebCore::CommandLineAPIHost::clearConsoleMessages):
      (WebCore::CommandLineAPIHost::copyText):
      (WebCore::CommandLineAPIHost::InspectableObject::get):
      (WebCore::CommandLineAPIHost::addInspectedObject):
      (WebCore::CommandLineAPIHost::clearInspectedObjects):
      (WebCore::CommandLineAPIHost::inspectedObject):
      (WebCore::CommandLineAPIHost::databaseIdImpl):
      (WebCore::CommandLineAPIHost::storageIdImpl):
      * inspector/CommandLineAPIHost.h: Copied from Source/WebCore/inspector/InjectedScriptHost.h.
      (WebCore::CommandLineAPIHost::init):
      * inspector/CommandLineAPIHost.idl: Copied from Source/WebCore/inspector/InjectedScriptHost.idl.
      * inspector/CommandLineAPIModule.cpp:
      These are almost all pure copies from InjectedScriptHost files. Cleaned up a bit.
      
      * inspector/InjectedScriptModule.h:
      * inspector/InjectedScriptModule.cpp:
      (WebCore::InjectedScriptModule::ensureInjected):
      Modules can now define a host object when they are getting injected.
      
      (WebCore::CommandLineAPIModule::host):
      * inspector/CommandLineAPIModule.h:
      Provide a CommandLineAPIHost, host object.
      
      * inspector/InjectedScriptCanvasModule.h:
      * inspector/InjectedScriptCanvasModule.cpp:
      (WebCore::InjectedScriptCanvasModule::host):
      No host object is needed for the CanvasModule.
      
      * inspector/InjectedScriptSource.js:
      * inspector/CommandLineAPIModuleSource.js:
      When injecting a module, pass on an optional host object to
      the module's source. Move a little more code between the
      two files. The two files are very tightly coupled right now.
      
      * inspector/InjectedScriptHost.cpp:
      (WebCore::InjectedScriptHost::create):
      * inspector/InjectedScriptHost.h:
      (WebCore::InjectedScriptHost::~InjectedScriptHost):
      (WebCore::InjectedScriptHost::InjectedScriptHost):
      * inspector/InjectedScriptHost.idl:
      Move any command line specific logic to CommandLineAPIHost classes.
      
      * inspector/InjectedScriptManager.cpp:
      (WebCore::InjectedScriptManager::disconnect):
      * inspector/InjectedScriptManager.h:
      (WebCore::InjectedScriptManager::commandLineAPIHost):
      * inspector/InspectorConsoleAgent.cpp:
      (WebCore::InspectorConsoleAgent::addInspectedHeapObject):
      * inspector/InspectorController.cpp:
      (WebCore::InspectorController::InspectorController):
      * inspector/InspectorHeapProfilerAgent.cpp:
      (WebCore::InspectorHeapProfilerAgent::resetState):
      * inspector/InspectorProfilerAgent.cpp:
      (WebCore::InspectorProfilerAgent::resetState):
      * inspector/PageConsoleAgent.cpp:
      (WebCore::PageConsoleAgent::addInspectedNode):
      * inspector/PageInjectedScriptManager.cpp:
      (WebCore::PageInjectedScriptManager::PageInjectedScriptManager):
      (WebCore::PageInjectedScriptManager::disconnect):
      * inspector/PageInjectedScriptManager.h:
      * inspector/WorkerInspectorController.cpp:
      (WebCore::WorkerInspectorController::WorkerInspectorController):
      An InjectedScriptManager may optionally have a commandLineAPIHost object.
      If it does, initialize it, and send it messages.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160946 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b7b8b6b6
    • mmaxfield@apple.com's avatar
      Allow ImageBuffer to re-use IOSurfaces · 056ce856
      mmaxfield@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125477
      
      Reviewed by Geoff Garen.
      
      PerformanceTests:
      
      This test times creating a variety of different sizes of canvases
      once some have already been created. The second creation of the
      canvases should re-use the existing IOSurfaces.
      
      * Canvas/reuse.html: Added.
      
      Source/WebCore:
      
      This test adds a static class, ImageBufferBackingStoreCache, that vends
      IOSurfaces. It remembers IOSurfaces that have been returned to it until
      a configurable timeout.
      
      The storage used by this class is in the form of a HashMap from a
      bucketed size to the IOSurface. There are many other data structures
      that could be used, but this implementation gives a 80% hit rate on
      normal browsing of some example sites with Canvas and
      text-decoration-skip: ink. Because the buckets are fairly
      small (rounding the width and height up to multiples of 8), traversing the
      bucket contents takes on average 2 steps.
      
      Test: fast/canvas/canvas-backing-store-reuse.html
      
      * WebCore.xcodeproj/project.pbxproj: Added new caching class
      * platform/graphics/cg/ImageBufferBackingStoreCache.cpp: Added.
      (WebCore::createIOSurface): Moved from ImageBufferCG.cpp
      (WebCore::ImageBufferBackingStoreCache::timerFired): Forget the cache
      contents
      (WebCore::ImageBufferBackingStoreCache::schedulePurgeTimer):
      (WebCore::ImageBufferBackingStoreCache::get): Static getter
      (WebCore::ImageBufferBackingStoreCache::ImageBufferBackingStoreCache):
      (WebCore::ImageBufferBackingStoreCache::insertIntoCache): Memory-management
      creation function
      (WebCore::ImageBufferBackingStoreCache::takeFromCache): Memory-management
      deletion function
      (WebCore::ImageBufferBackingStoreCache::isAcceptableSurface): Does this cached
      IOSurface fit the bill?
      (WebCore::ImageBufferBackingStoreCache::tryTakeFromCache): Lookup
      a bucket and walk through its contents
      (WebCore::ImageBufferBackingStoreCache::getOrAllocate): Public function
      for clients who want a IOSurface from the cache
      (WebCore::ImageBufferBackingStoreCache::deallocate): Public
      function for clients to return an IOSurface to the pool
      * platform/graphics/cg/ImageBufferBackingStoreCache.h: Added.
      * platform/graphics/cg/ImageBufferCG.cpp: Update to use new cache
      (WebCore::ImageBuffer::ImageBuffer):
      (WebCore::ImageBuffer::~ImageBuffer):
      
      LayoutTests:
      
      Now that we're re-using the backing store of canvases, this
      test makes sure that if we draw to a canvas, then destroy it,
      then create a new canvas (which should share the same backing
      store) that it doesn't have the stale data in it
      
      * fast/canvas/canvas-backing-store-reuse-expected.txt: Added.
      * fast/canvas/canvas-backing-store-reuse.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160945 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      056ce856
    • simon.fraser@apple.com's avatar
      Change "threaded scrolling" terminology to "asynchronous scrolling" · 608cf850
      simon.fraser@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126094
      
      Source/WebCore:
      
      Reviewed by Tim Horton.
      
      Rename ENABLE_THREADED_SCROLLING to ENABLE_ASYNC_SCROLLING, and change
      references to "main thread scrolling" to "synchronous scrolling".
      
      In a few places, functions with names like shouldUpdateScrollLayerPositionOnMainThread()
      were actually returning SynchronousScrollingReasons, so rename them appropriately.
      
      * WebCore.exp.in:
      * page/FrameView.cpp:
      (WebCore::FrameView::shouldUpdateCompositingLayersAfterScrolling):
      (WebCore::FrameView::isRubberBandInProgress):
      (WebCore::FrameView::requestScrollPositionUpdate):
      (WebCore::FrameView::updatesScrollLayerPositionOnMainThread):
      (WebCore::FrameView::wheelEvent):
      * page/Page.cpp:
      (WebCore::Page::synchronousScrollingReasonsAsText):
      * page/Page.h:
      * page/scrolling/ScrollingCoordinator.cpp:
      (WebCore::ScrollingCoordinator::create):
      (WebCore::ScrollingCoordinator::ScrollingCoordinator):
      (WebCore::ScrollingCoordinator::frameViewHasSlowRepaintObjectsDidChange):
      (WebCore::ScrollingCoordinator::frameViewFixedObjectsDidChange):
      (WebCore::ScrollingCoordinator::frameViewRootLayerDidChange):
      (WebCore::ScrollingCoordinator::synchronousScrollingReasons):
      (WebCore::ScrollingCoordinator::updateSynchronousScrollingReasons):
      (WebCore::ScrollingCoordinator::setForceSynchronousScrollLayerPositionUpdates):
      (WebCore::ScrollingCoordinator::synchronousScrollingReasonsAsText):
      * page/scrolling/ScrollingCoordinator.h:
      (WebCore::ScrollingCoordinator::shouldUpdateScrollLayerPositionSynchronously):
      (WebCore::ScrollingCoordinator::setSynchronousScrollingReasons):
      * page/scrolling/ScrollingStateFixedNode.cpp:
      * page/scrolling/ScrollingStateFixedNode.h:
      * page/scrolling/ScrollingStateNode.cpp:
      * page/scrolling/ScrollingStateNode.h:
      * page/scrolling/ScrollingStateScrollingNode.cpp:
      (WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
      (WebCore::ScrollingStateScrollingNode::setSynchronousScrollingReasons):
      (WebCore::ScrollingStateScrollingNode::dumpProperties):
      * page/scrolling/ScrollingStateScrollingNode.h: Awkward "ReasonsForSynchronousScrolling" to avoid
      conflict with the enum called SynchronousScrollingReasons.
      * page/scrolling/ScrollingStateStickyNode.cpp:
      * page/scrolling/ScrollingStateStickyNode.h:
      * page/scrolling/ScrollingStateTree.cpp:
      * page/scrolling/ScrollingStateTree.h:
      * page/scrolling/ScrollingThread.cpp:
      * page/scrolling/ScrollingThread.h:
      * page/scrolling/ScrollingTree.cpp:
      * page/scrolling/ScrollingTree.h:
      * page/scrolling/ScrollingTreeNode.cpp:
      * page/scrolling/ScrollingTreeNode.h:
      * page/scrolling/ScrollingTreeScrollingNode.cpp:
      (WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
      (WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
      * page/scrolling/ScrollingTreeScrollingNode.h:
      (WebCore::ScrollingTreeScrollingNode::synchronousScrollingReasons):
      (WebCore::ScrollingTreeScrollingNode::shouldUpdateScrollLayerPositionSynchronously):
      * page/scrolling/mac/ScrollingCoordinatorMac.h:
      * page/scrolling/mac/ScrollingCoordinatorMac.mm:
      (WebCore::ScrollingCoordinatorMac::setSynchronousScrollingReasons):
      (WebCore::ScrollingCoordinatorMac::commitTreeState):
      * page/scrolling/mac/ScrollingStateNodeMac.mm:
      * page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
      * page/scrolling/mac/ScrollingThreadMac.mm:
      * page/scrolling/mac/ScrollingTreeFixedNode.h:
      * page/scrolling/mac/ScrollingTreeFixedNode.mm:
      * page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
      * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
      (WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):
      (WebCore::ScrollingTreeScrollingNodeMac::scrollPosition):
      (WebCore::ScrollingTreeScrollingNodeMac::setScrollPositionWithoutContentEdgeConstraints):
      (WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):
      (WebCore::logThreadedScrollingMode):
      * page/scrolling/mac/ScrollingTreeStickyNode.h:
      * page/scrolling/mac/ScrollingTreeStickyNode.mm:
      * platform/Scrollbar.cpp:
      (WebCore::Scrollbar::supportsUpdateOnSecondaryThread):
      * platform/graphics/TiledBacking.h:
      * platform/graphics/ca/mac/TileController.mm:
      (WebCore::TileController::TileController):
      (WebCore::TileController::updateTileCoverageMap):
      * platform/mac/MemoryPressureHandlerMac.mm:
      (WebCore::MemoryPressureHandler::releaseMemory):
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::setupFontSubpixelQuantization):
      * rendering/RenderLayerBacking.cpp:
      (WebCore::computeTileCoverage):
      * testing/Internals.cpp:
      (WebCore::Internals::mainThreadScrollingReasons):
      * testing/Internals.idl:
      
      Source/WebKit2:
      
      Reviewed by Tim Horton.
      
      Rename ENABLE_THREADED_SCROLLING to ENABLE_ASYNC_SCROLLING, and change
      references to "main thread scrolling" to "synchronous scrolling".
      
      * WebProcess/WebPage/EventDispatcher.cpp:
      (WebKit::EventDispatcher::wheelEvent):
      * WebProcess/WebPage/EventDispatcher.h:
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::WebPage):
      (WebKit::WebPage::~WebPage):
      * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
      (WebKit::TiledCoreAnimationDrawingArea::didInstallPageOverlay):
      (WebKit::TiledCoreAnimationDrawingArea::didUninstallPageOverlay):
      (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
      (WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):
      
      Source/WTF:
      
      Reviewed by Tim Horton.
      
      Rename ENABLE_THREADED_SCROLLING to ENABLE_ASYNC_SCROLLING.
      
      * wtf/FeatureDefines.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160944 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      608cf850
    • timothy_horton@apple.com's avatar
      Revert r160327, r160273, and r160260. · d7abbbc6
      timothy_horton@apple.com authored
      We'll come up with something less aggressive, as this doesn't quite work.
      
      * loader/cache/CachedImage.h:
      * loader/cache/CachedResource.h:
      * loader/cache/MemoryCache.cpp:
      (WebCore::MemoryCache::pruneLiveResourcesToSize):
      * platform/graphics/BitmapImage.cpp:
      (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
      * platform/graphics/BitmapImage.h:
      * platform/graphics/Image.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160943 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d7abbbc6
    • andersca@apple.com's avatar
      PostAttachCallbackDisabler should take a Document · 5ac81e77
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126090
      
      Reviewed by Andreas Kling.
      
      suspendPostAttachCallbacks and resumePostAttachCallbacks always only get the document from the
      container node, so make them static member functions that take a Document&. Also, move PostAttachCallbackDisabler
      to Element.h in preparation for moving post attach callback handling to Element.
      
      * dom/ContainerNode.cpp:
      (WebCore::ContainerNode::suspendPostAttachCallbacks):
      (WebCore::ContainerNode::resumePostAttachCallbacks):
      * dom/ContainerNode.h:
      * dom/Element.h:
      (WebCore::PostAttachCallbackDisabler::PostAttachCallbackDisabler):
      (WebCore::PostAttachCallbackDisabler::~PostAttachCallbackDisabler):
      * style/StyleResolveTree.cpp:
      (WebCore::Style::attachRenderTree):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160942 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5ac81e77
    • bjonesbe@adobe.com's avatar
      Pretty print LayoutUnit, LayoutPoint, and LayoutSize in gdb and lldb · 20e6862e
      bjonesbe@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126080
      
      Reviewed by Anders Carlsson.
      
      This changes the output of printing LayoutUnits to be in px, removing
      the need to divide by 64 manually.
      
      This will lead to gdb output like:
      
      m_frameRect = {
          m_location = LayoutPoint(0px, 0px),
          m_size = LayoutSize(800px, 585px)
      }
      
      And lldb output like:
      
      (const WebCore::LayoutRect) $0 = {
        m_location = { x = 744px, y = 1px }
        m_size = { width = 236px, height = 40px }
      }
      
      This patch is based on patch for Blink by cbiesinger@chromium.org.
      
      * gdb/webkit.py:
      (WebCoreLayoutUnitPrinter):
      (WebCoreLayoutUnitPrinter.__init__):
      (WebCoreLayoutUnitPrinter.to_string):
      (WebCoreLayoutSizePrinter):
      (WebCoreLayoutSizePrinter.__init__):
      (WebCoreLayoutSizePrinter.to_string):
      (WebCoreLayoutPointPrinter):
      (WebCoreLayoutPointPrinter.__init__):
      (WebCoreLayoutPointPrinter.to_string):
      (add_pretty_printers):
      * lldb/lldb_webkit.py:
      (__lldb_init_module):
      (WebCoreLayoutUnit_SummaryProvider):
      (WebCoreLayoutSize_SummaryProvider):
      (WebCoreLayoutPoint_SummaryProvider):
      (WebCoreLayoutUnitProvider):
      (WebCoreLayoutUnitProvider.__init__):
      (WebCoreLayoutUnitProvider.to_string):
      (WebCoreLayoutSizeProvider):
      (WebCoreLayoutSizeProvider.__init__):
      (WebCoreLayoutSizeProvider.get_width):
      (WebCoreLayoutSizeProvider.get_height):
      (WebCoreLayoutPointProvider):
      (WebCoreLayoutPointProvider.__init__):
      (WebCoreLayoutPointProvider.get_x):
      (WebCoreLayoutPointProvider.get_y):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160941 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      20e6862e
    • commit-queue@webkit.org's avatar
      Rename PlugInAutoStartProvider's ...EntriesAddedBeforeTime facility to ...EntriesAddedAfterTime · c6340b4f
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=126078
      
      Patch by Ricky Mondello <rmondello@apple.com> on 2013-12-20
      Reviewed by Anders Carlsson.
      
      r160922 accidentally named a facility for filtering out data added after a certain time,
      "...FilteringOutEntriesAddedBeforeTime", which was incorrect. This patch renames those instances
      to "...FilteringOutEntriesAddedAfterTime".
      
      * UIProcess/API/C/WKContext.cpp:
      (WKContextSetPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime):
      * UIProcess/API/C/WKContext.h:
      * UIProcess/Plugins/PlugInAutoStartProvider.cpp:
      (WebKit::PlugInAutoStartProvider::setAutoStartOriginsFilteringOutEntriesAddedAfterTime):
      * UIProcess/Plugins/PlugInAutoStartProvider.h:
      * UIProcess/WebContext.cpp:
      (WebKit::WebContext::setPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime):
      * UIProcess/WebContext.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160940 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6340b4f
    • weinig@apple.com's avatar
      [WK2] Add SPI for using a custom protocol handler · f5d03283
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126089
      
      Reviewed by Anders Carlsson.
      
      * UIProcess/API/C/mac/WKContextPrivateMac.h:
      * UIProcess/API/C/mac/WKContextPrivateMac.mm:
      (WKContextRegisterSchemeForCustomProtocol):
      (WKContextUnregisterSchemeForCustomProtocol):
      * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
      (+[WKBrowsingContextController registerSchemeForCustomProtocol:]):
      (+[WKBrowsingContextController unregisterSchemeForCustomProtocol:]):
      * UIProcess/WebContext.cpp:
      (WebKit::WebContext::globalURLSchemesWithCustomProtocolHandlers):
      (WebKit::WebContext::registerGlobalURLSchemeAsHavingCustomProtocolHandlers):
      (WebKit::WebContext::unregisterGlobalURLSchemeAsHavingCustomProtocolHandlers):
      * UIProcess/WebContext.h:
      * UIProcess/mac/WebContextMac.mm:
      (WebKit::WebContext::platformInitializeWebProcess):
      (WebKit::WebContext::platformInitializeNetworkProcess):
      (WebKit::WebContext::registerNotificationObservers):
      (WebKit::WebContext::unregisterNotificationObservers):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160939 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f5d03283