Skip to content
  • beidson@apple.com's avatar
    https://bugs.webkit.org/show_bug.cgi?id=57058 · 3b040610
    beidson@apple.com authored
    Hookup the UIProcess WebIconDatabase to a WebCore::IconDatabase as its implementation
    
    Reviewed by Sam Weinig.
    
    ../WebCore: 
    
    * loader/icon/IconDatabase.cpp:
    (WebCore::IconDatabase::synchronousLoadDecisionForIconURL): Only add the DocumentLoader to the set if it's non-zero.
    (WebCore::IconDatabase::IconDatabase): Add more logging.
    (WebCore::IconDatabase::performURLImport): Dispatch the "didFinishURLImport" client callback using the following 3 methods.
    (WebCore::FinishedURLImport::FinishedURLImport):
    (WebCore::FinishedURLImport::performWork):
    (WebCore::IconDatabase::dispatchDidFinishURLImportOnMainThread):
    
    * loader/icon/IconDatabase.h:
    (WebCore::IconDatabase::create): Expose a PassOwnPtr<> creator.
    
    * WebCore.exp.in:
    
    ../WebKit2: 
    
    * UIProcess/WebIconDatabase.cpp:
    (WebKit::WebIconDatabase::WebIconDatabase):
    (WebKit::WebIconDatabase::setDatabasePath): Create a new WebCore::IconDatabase and open it to this path.
    (WebKit::WebIconDatabase::retainIconForPageURL): Actually retain the url, using the impl.
    (WebKit::WebIconDatabase::releaseIconForPageURL): Actually release the url, using the impl.
    (WebKit::WebIconDatabase::setIconURLForPageURL): Actually set the url, using the impl.
    (WebKit::WebIconDatabase::setIconDataForIconURL): Actually set the data, using the impl.
    (WebKit::WebIconDatabase::getLoadDecisionForIconURL): Actually ask for a load decision to call back with.
    (WebKit::WebIconDatabase::performImport):
    (WebKit::WebIconDatabase::didImportIconURLForPageURL):
    (WebKit::WebIconDatabase::didImportIconDataForPageURL):
    (WebKit::WebIconDatabase::didChangeIconForPageURL):
    (WebKit::WebIconDatabase::didRemoveAllIcons):
    (WebKit::WebIconDatabase::didFinishURLImport): Notify all the pending callbacks what their load decisions
      are now that they're available.
    * UIProcess/WebIconDatabase.h:
    
    Add an IconDatabase logging channel:
    * Platform/Logging.cpp:
    (WebKit::initializeLogChannelsIfNecessary):
    * Platform/Logging.h:
    
    * UIProcess/WebContext.cpp:
    (WebKit::WebContext::setIconDatabasePath): Pass the new path on to the WebIconDatabase, possibly
      opening it.
    * UIProcess/WebContext.h:
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81920 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    3b040610