summaryrefslogtreecommitdiffstats
path: root/android_webview
diff options
context:
space:
mode:
authormef@chromium.org <mef@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-15 08:37:48 +0000
committermef@chromium.org <mef@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-15 08:37:48 +0000
commit749fadd21aec1956873b3f8de5602874c7a52dc6 (patch)
treef276b17bab9f9b689ac11fbe78364070bb2c0332 /android_webview
parent0ee52ae1c62435fcc90d71fda333fd49431b1525 (diff)
downloadchromium_src-749fadd21aec1956873b3f8de5602874c7a52dc6.zip
chromium_src-749fadd21aec1956873b3f8de5602874c7a52dc6.tar.gz
chromium_src-749fadd21aec1956873b3f8de5602874c7a52dc6.tar.bz2
Don't request missing favicon on every page request.
Mark Favicon as 'Unable to Download' if server returns HTTP status 404 and don't try to download it again until user closes the browser or clicks 'Shift-Reload' (RELOAD_IGNORING_CACHE). Firefox 20 and IE 10 don't request missing favicon.ico on every page request. Propagated HTTP Status Code from MultiResolutionImageResourceFetcher all the way up to FaviconTabHelper, which required extension of 3 interfaces. BUG=39402 TEST=FaviconHandlerTest.UnableToDownloadFavicon Reviewers: sky@chromium.org - Overall CL, chrome/browser/*, content/browser/* palmer@chromium.org - content/common/image_messages.h joi@chromium.org - content/public/browser/web_contents.h jamesr@chromium.org - content/renderer/*, webkit/glue/* mnaganov@chromium.org - android_webview/browser/icon_helper.* Review URL: https://chromiumcodereview.appspot.com/14322023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200194 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'android_webview')
-rw-r--r--android_webview/browser/icon_helper.cc2
-rw-r--r--android_webview/browser/icon_helper.h5
2 files changed, 4 insertions, 3 deletions
diff --git a/android_webview/browser/icon_helper.cc b/android_webview/browser/icon_helper.cc
index 13091f2..7f6c4fb 100644
--- a/android_webview/browser/icon_helper.cc
+++ b/android_webview/browser/icon_helper.cc
@@ -30,7 +30,7 @@ void IconHelper::SetListener(Listener* listener) {
}
void IconHelper::DownloadFaviconCallback(
- int id, const GURL& image_url, int requested_size,
+ int id, int http_status_code, const GURL& image_url, int requested_size,
const std::vector<SkBitmap>& bitmaps) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
if (bitmaps.size() == 0) {
diff --git a/android_webview/browser/icon_helper.h b/android_webview/browser/icon_helper.h
index e684cdf..390ac39 100644
--- a/android_webview/browser/icon_helper.h
+++ b/android_webview/browser/icon_helper.h
@@ -37,8 +37,9 @@ class IconHelper : public content::WebContentsObserver {
virtual void DidUpdateFaviconURL(int32 page_id,
const std::vector<content::FaviconURL>& candidates) OVERRIDE;
- void DownloadFaviconCallback(int id, const GURL& image_url,
- int requested_size, const std::vector<SkBitmap>& bitmaps);
+ void DownloadFaviconCallback(int id, int http_status_code,
+ const GURL& image_url, int requested_size,
+ const std::vector<SkBitmap>& bitmaps);
private:
Listener* listener_;