-
sdefresne authored
Split FaviconTabHelper into three classes depending on what can be shared with iOS (FaviconDriverImpl), what only depends on //content (ContentFaviconDriver) and what depends on //chrome (FaviconTabHelper). FaviconTabHelper still exists to provide an easier factory (as ContentFaviconDriver cannot access KeyedService factories defined in //chrome) as FaviconTabHelper::CreateForWebContents() is called from multiple locations in //chrome code and to provide an implementation for FaviconTabHelper::ShouldDisplayFavicon (this method will be turned into a free function in a followup CL as it only depends on WebContents public interface, not on ContentFaviconDriver). Introduce WebFaviconDriver, an iOS implementation of FaviconDriver that uses FaviconDriverImpl to share as much code as possible with the ContentFaviconDriver. BUG=370877, 472117 Review URL: https://codereview.chromium.org/1064823002 Cr-Commit-Position: refs/heads/master@{#324430}
70a04802