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