Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(434)

Side by Side Diff: ios/chrome/browser/favicon/ios_chrome_large_icon_service_factory.mm

Issue 1413903008: Add LargeIconCache and LargeIconServiceFactory for iOS. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "ios/chrome/browser/favicon/ios_chrome_large_icon_service_factory.h"
6
7 #include "base/memory/singleton.h"
8 #include "base/thread_task_runner_handle.h"
9 #include "components/favicon/core/large_icon_service.h"
10 #include "components/keyed_service/core/service_access_type.h"
11 #include "components/keyed_service/ios/browser_state_dependency_manager.h"
12 #include "ios/chrome/browser/browser_state/browser_state_otr_helper.h"
13 #include "ios/chrome/browser/favicon/favicon_service_factory.h"
14 #include "ios/public/provider/chrome/browser/browser_state/chrome_browser_state. h"
15
16 // static
17 favicon::LargeIconService* IOSChromeLargeIconServiceFactory::GetForBrowserState(
18 ios::ChromeBrowserState* browser_state) {
19 return static_cast<favicon::LargeIconService*>(
20 GetInstance()->GetServiceForBrowserState(browser_state, true));
21 }
22
23 // static
24 IOSChromeLargeIconServiceFactory*
25 IOSChromeLargeIconServiceFactory::GetInstance() {
26 return base::Singleton<IOSChromeLargeIconServiceFactory>::get();
27 }
28
29 IOSChromeLargeIconServiceFactory::IOSChromeLargeIconServiceFactory()
30 : BrowserStateKeyedServiceFactory(
31 "LargeIconService",
32 BrowserStateDependencyManager::GetInstance()) {}
33
34 IOSChromeLargeIconServiceFactory::~IOSChromeLargeIconServiceFactory() {}
35
36 scoped_ptr<KeyedService>
37 IOSChromeLargeIconServiceFactory::BuildServiceInstanceFor(
38 web::BrowserState* context) const {
39 ios::ChromeBrowserState* browser_state =
40 ios::ChromeBrowserState::FromBrowserState(context);
41
42 return make_scoped_ptr(new favicon::LargeIconService(
43 ios::FaviconServiceFactory::GetForBrowserState(
44 browser_state, ServiceAccessType::EXPLICIT_ACCESS),
45 base::ThreadTaskRunnerHandle::Get()));
46 }
47
48 web::BrowserState* IOSChromeLargeIconServiceFactory::GetBrowserStateToUse(
49 web::BrowserState* context) const {
50 return GetBrowserStateOwnInstanceInIncognito(context);
51 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698