gecko-dev/toolkit
Dave Townsend 9cbfdc7c2d Bug 1453751: Load favicons in the content process. r=mak, r=gijs, r=aswan
Summary:
This moves the load of favicons into the content process. We use the same logic
for finding favicons (based on waiting until none have shown up for a short
time) but then load the favicon and convert it to a data uri which we then
dispatch to the parent process. Along the way this fixes asssociating the load
with the tab for WebExtension and devtools, fixes CSP usage for the load, fixes
expiry detection of the favicon and stops us from loading the same resource
twice.

This change also merges the prefs browser.chrome.site_icons and
browser.chrome.favicons leaving just the former controlling favicon loading. It
adds the pref browser.chrome.guess_favicon to allow disabling guessing where
a favicon might be located for a site (at <hostname>/favicon.ico). This is
mainly to allow disabling this in tests where those additional yet automatic
requests are uninteresting for the test.

There are multiple clean-ups that can follow this but this is a first step along
that path.

MozReview-Commit-ID: E0Cs59UnxaF

Reviewers: mak

Tags: #secure-revision

Bug #: 1453751

Differential Revision: https://phabricator.services.mozilla.com/D1672
Differential Revision: https://phabricator.services.mozilla.com/D1673
Differential Revision: https://phabricator.services.mozilla.com/D1674

--HG--
rename : browser/base/content/test/general/browser_bug408415.js => browser/base/content/test/favicons/browser_bug408415.js
rename : browser/base/content/test/general/browser_bug550565.js => browser/base/content/test/favicons/browser_bug550565.js
rename : browser/base/content/test/general/browser_favicon_change.js => browser/base/content/test/favicons/browser_favicon_change.js
rename : browser/base/content/test/general/browser_favicon_change_not_in_document.js => browser/base/content/test/favicons/browser_favicon_change_not_in_document.js
rename : browser/base/content/test/general/browser_subframe_favicons_not_used.js => browser/base/content/test/favicons/browser_subframe_favicons_not_used.js
rename : browser/base/content/test/general/file_bug970276_favicon1.ico => browser/base/content/test/favicons/file_bug970276_favicon1.ico
rename : browser/base/content/test/general/file_bug970276_favicon1.ico => browser/base/content/test/favicons/file_bug970276_favicon2.ico
rename : browser/base/content/test/general/file_bug970276_popup1.html => browser/base/content/test/favicons/file_bug970276_popup1.html
rename : browser/base/content/test/general/file_bug970276_popup2.html => browser/base/content/test/favicons/file_bug970276_popup2.html
rename : browser/base/content/test/general/file_favicon_change.html => browser/base/content/test/favicons/file_favicon_change.html
rename : browser/base/content/test/general/file_favicon_change_not_in_document.html => browser/base/content/test/favicons/file_favicon_change_not_in_document.html
rename : browser/base/content/test/general/file_bug970276_favicon1.ico => browser/base/content/test/favicons/file_generic_favicon.ico
rename : browser/base/content/test/general/file_with_favicon.html => browser/base/content/test/favicons/file_with_favicon.html
extra : rebase_source : 53dc0c682bf61d5135fbca172ac5238b414a1771
2018-06-04 12:53:55 -07:00
..
components Bug 1453751: Load favicons in the content process. r=mak, r=gijs, r=aswan 2018-06-04 12:53:55 -07:00
content Bug 1418033 - Test for disabled manual FAYT. r=mikedeboer 2018-06-23 23:34:03 +02:00
crashreporter Bug 1309172 - Updated breakpad to version 69c2c51dd89965d234eec16e3a9353634831916b; r=ted.mielczarek 2018-06-19 13:47:13 +02:00
forgetaboutsite Bug 1470109 - Move ServiceWorkerCleanUp.jsm into toolkit/components/cleardata, r=johannh 2018-06-21 16:50:10 +02:00
library Merge autoland to mozilla-central. a=merge 2018-06-21 12:46:57 +03:00
locales Backed out changeset 531593bacc4e (bug 1448040) for Android build bustages on HangAnnotations.h. CLOSED TREE 2018-06-07 19:22:31 +03:00
modules Merge mozilla-central to mozilla-inbound 2018-06-20 01:06:23 +03:00
mozapps Bug 1469686: Fix nonsense in test_temporary and re-enable on win32-debug. r=rhelmer 2018-06-19 13:58:27 -07:00
pluginproblem Bug 1456625 - Remove replacement XBL binding (Backout cb51f3bada90) r=Felipe 2018-05-24 18:23:48 +08:00
profile Bug 1462798 - Create a base custom element class that shares the parseXULToFragment helper;r=Paolo 2018-05-19 13:56:06 -07:00
system Bug 1427700 - Don't return valid HandlerApp for the application/octet-stream content type; r=stransky 2018-05-17 17:02:56 +02:00
themes Bug 1466826 - Use SVG context paint for the Windows tree twisties. r=dao 2018-06-21 19:13:20 +02:00
xre Bug 1413868. r=valentin 2018-06-07 13:56:16 -04:00
.eslintrc.js bug 1442407 - increase eslint complexity level from 44 to 45 due to backout that reverted code that has a complexity level of 45. r=bustage CLOSED TREE 2018-03-01 15:35:43 -08:00
moz.build Bug 1456863 - Backed out bug 356831 (changeset 204bb43af943) for leaks r=me 2018-04-30 15:34:39 +02:00
moz.configure Bug 1460367 - move audio sample-related settings to moz.configure; r=ted.mielczarek,nalexander 2018-05-09 17:26:31 -04:00
nss.configure Bug 1446809 - Remove some b2g leftover in the build r=glandium 2018-03-20 10:46:23 +01:00
toolkit.mozbuild Bug 833098: Part 1 - Remove dead code in xpfe directory viewer. r=Mossop 2018-04-28 21:28:03 -07:00