[Icons NTP] Refactor large_icon_source to extract the logic shared between desktop and Android to a new large_icon_service.
This is required since the Android implementation of the icon-based NTP will rely on custom Java code to render the fallback. As a result we want to share the logic needed to retrieve large icons and to compute the fallback style without needing them to go through the full-featured chrome://large-icon that performs the rendering of fallback icons. The Java code will hook directly into the large_icon_service.
This CL also fixes a bug, making sure only non-square icons can be returned as large icons.
Besides this, this CL doesn't change the behavior but will make it possible to add the large icon selection logic to large_icon_service where it can be shared with the Android code.
BUG=467712
Review URL: https://codereview.chromium.org/1092873002
Cr-Commit-Position: refs/heads/master@{#326325}
diff --git a/components/favicon.gypi b/components/favicon.gypi
index d150316..d2f9195 100644
--- a/components/favicon.gypi
+++ b/components/favicon.gypi
@@ -36,6 +36,8 @@
'favicon/core/favicon_service.h',
'favicon/core/favicon_url.cc',
'favicon/core/favicon_url.h',
+ 'favicon/core/large_icon_service.cc',
+ 'favicon/core/large_icon_service.h',
],
'include_dirs': [
'..',