WebCore:
Reviewed by Anders and John
Icons can now refresh when new data is sent from WebKit, both on disk and in memory
* bridge/mac/WebCoreIconDatabaseBridge.h:
* bridge/mac/WebCoreIconDatabaseBridge.mm:
(WebCore::IconDatabase::loadIconFromURL): Allows WebCore/Kit to kick off a load
outside of any greater context
(-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
(-[WebCoreIconDatabaseBridge isIconExpiredForPageURL:]): Allows WebKit
to get whether or not an icon has expired
* loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::recreateDatabase): Changed database schema slightly
(WebCore::IconDatabase::createPrivateTables): Changed database schema slightly
(WebCore::IconDatabase::iconForPageURL):
(WebCore::IconDatabase::isIconExpiredForIconURL): Get if an icon has expired
(WebCore::IconDatabase::isIconExpiredForPageURL): Get if an icon has expired
(WebCore::IconDatabase::setIconDataForIconURL): Force a refresh of the in memory
image when new icon data is loaded
(WebCore::IconDatabase::setIconURLForPageURL): added a check for null iconID
* loader/icon/IconDatabase.h: added/changed some methods
* loader/icon/SiteIcon.cpp:
(SiteIcon::getImage): simplified/removed debugging code
(SiteIcon::manuallySetImageData): allow the image data to be changed when new icon
data is loaded
WebKit:
Reviewed by Anders and John
* Misc/WebIconDatabase.m:
(-[WebIconDatabase init]):
(-[WebIconDatabase isIconExpiredForIconURL:]): Get if an icon expired
(-[WebIconDatabase isIconExpiredForPageURL:]): Ditto
(-[WebIconDatabase _setIconURL:forURL:]):
(-[WebIconDatabase _sendNotificationForURL:]): Moved to WebKitPendingPublic for use outside of WebIconDatabase
(-[WebIconDatabase loadIconFromURL:]): Allow a load outside the context of a page load
* Misc/WebIconDatabasePrivate.h:
* Misc/WebIconLoader.m:
(-[WebIconLoader didFinishLoading]): fixed up the "flipping the switch" #defs a bit
(-[WebIconLoader willSendRequest:redirectResponse:]): override to allow a load
outside of the context of a page load
* WebCoreSupport/WebIconDatabaseBridge.h: Added.
* WebCoreSupport/WebIconDatabaseBridge.m: Added.
(-[WebIconDatabaseBridge init]):
(-[WebIconDatabaseBridge dealloc]):
(-[WebIconDatabaseBridge loadIconFromURL:]): Kick off a load on an icon outside
of the context of any page load
(-[WebIconDatabaseBridge _setIconData:forIconURL:]): WebKit side of bridge method
(-[WebIconDatabaseBridge _setHaveNoIconForIconURL:]): WebKit side of bridge method
(-[WebIconDatabaseBridge releaseCachedLoaderForIconURL:]):
(+[WebIconDatabaseBridge sharedBridgeInstance]): Moved this from WebCore to WebKit
so both sides of the bridge get the WebKit version
* WebKit.xcodeproj/project.pbxproj: Added some files
* WebView/WebDataSource.m:
(-[WebDataSource _loadIcon]): Added check for reload/expired icon to force
a load even if we already have it
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15815
268f45cc-cd09-0410-ab3c-
d52691b4dbfc