blob: 9efa136e4e8b865aa7b92f584e59983027147055 [file] [log] [blame]
Avi Drissman4a8573c2022-09-09 19:35:541// Copyright 2015 The Chromium Authors
sdefresneed27d86b2015-09-14 11:02:382// 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/prefs/pref_service_syncable_util.h"
6
Lei Zhang3a3e8f62018-08-27 20:00:147#include <utility>
sdefresne0b1722f02015-09-14 18:12:128
Ramin Halavatic5b49772020-06-25 06:55:199#include "chrome/browser/prefs/pref_service_incognito_allowlist.h"
sdefresneed27d86b2015-09-14 11:02:3810#include "chrome/browser/profiles/profile.h"
maxbogueea16ff412016-10-28 16:35:2911#include "components/sync_preferences/pref_service_syncable.h"
sdefresne0b1722f02015-09-14 18:12:1212
sdefresneed27d86b2015-09-14 11:02:3813
maxbogueea16ff412016-10-28 16:35:2914sync_preferences::PrefServiceSyncable* PrefServiceSyncableFromProfile(
sdefresne50c1e522015-09-18 09:47:5115 Profile* profile) {
maxbogueea16ff412016-10-28 16:35:2916 return static_cast<sync_preferences::PrefServiceSyncable*>(
17 profile->GetPrefs());
sdefresneed27d86b2015-09-14 11:02:3818}
19
François Degros9d35fc572018-02-05 22:32:4520std::unique_ptr<sync_preferences::PrefServiceSyncable>
21CreateIncognitoPrefServiceSyncable(
maxbogueea16ff412016-10-28 16:35:2922 sync_preferences::PrefServiceSyncable* pref_service,
Ken Rockot8ecb33b2019-11-21 21:36:0423 PrefStore* incognito_extension_pref_store) {
sdefresne0b1722f02015-09-14 18:12:1224 return pref_service->CreateIncognitoPrefService(
Ramin Halavati275d9f62018-08-01 16:32:5825 incognito_extension_pref_store,
Ramin Halavatic5b49772020-06-25 06:55:1926 prefs::GetIncognitoPersistentPrefsAllowlist());
sdefresne0b1722f02015-09-14 18:12:1227}
Simon Zündc74fe492024-12-12 17:03:1628
29std::unique_ptr<sync_preferences::PrefServiceSyncable>
30CreateAutomationPrefService(sync_preferences::PrefServiceSyncable* pref_service,
31 PrefStore* incognito_extension_pref_store) {
32 return pref_service->CreateIncognitoPrefService(
33 incognito_extension_pref_store, /* persistent_pref_names */ {});
34}