1 // Copyright (c) 2012 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 "chrome/browser/media_galleries/media_galleries_preferences_factory.h" 6 7 #include "chrome/browser/media_galleries/media_galleries_preferences.h" 8 #include "chrome/browser/profiles/incognito_helpers.h" 9 #include "chrome/browser/profiles/profile.h" 10 #include "components/browser_context_keyed_service/browser_context_dependency_manager.h" 11 #include "components/user_prefs/pref_registry_syncable.h" 12 13 // static 14 chrome::MediaGalleriesPreferences* 15 MediaGalleriesPreferencesFactory::GetForProfile(Profile* profile) { 16 return static_cast<chrome::MediaGalleriesPreferences*>( 17 GetInstance()->GetServiceForBrowserContext(profile, true)); 18 } 19 20 // static 21 MediaGalleriesPreferencesFactory* 22 MediaGalleriesPreferencesFactory::GetInstance() { 23 return Singleton<MediaGalleriesPreferencesFactory>::get(); 24 } 25 26 MediaGalleriesPreferencesFactory::MediaGalleriesPreferencesFactory() 27 : BrowserContextKeyedServiceFactory( 28 "MediaGalleriesPreferences", 29 BrowserContextDependencyManager::GetInstance()) {} 30 31 MediaGalleriesPreferencesFactory::~MediaGalleriesPreferencesFactory() {} 32 33 BrowserContextKeyedService* 34 MediaGalleriesPreferencesFactory::BuildServiceInstanceFor( 35 content::BrowserContext* profile) const { 36 return new chrome::MediaGalleriesPreferences(static_cast<Profile*>(profile)); 37 } 38 39 void MediaGalleriesPreferencesFactory::RegisterProfilePrefs( 40 user_prefs::PrefRegistrySyncable* prefs) { 41 chrome::MediaGalleriesPreferences::RegisterProfilePrefs(prefs); 42 } 43 44 content::BrowserContext* 45 MediaGalleriesPreferencesFactory::GetBrowserContextToUse( 46 content::BrowserContext* context) const { 47 return chrome::GetBrowserContextRedirectedInIncognito(context); 48 } 49