blob: 28d953a0f0fe06e60605113cbd8f6a4b9e792ff6 [file] [log] [blame]
Avi Drissman4a8573c2022-09-09 19:35:541// Copyright 2017 The Chromium Authors
Brett Wilson21cf626a2017-09-07 00:30:202// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_FONT_PREF_CHANGE_NOTIFIER_FACTORY_H_
6#define CHROME_BROWSER_FONT_PREF_CHANGE_NOTIFIER_FACTORY_H_
7
Mikel Astiz9d3e5802023-05-30 21:42:308#include "base/no_destructor.h"
Ryan Sultanem66dded2b2022-08-22 10:34:159#include "chrome/browser/profiles/profile_keyed_service_factory.h"
Brett Wilson21cf626a2017-09-07 00:30:2010
11class FontPrefChangeNotifier;
12class Profile;
13
14// Keyed service factory for a FontPrefChangeNotifier.
Ryan Sultanem66dded2b2022-08-22 10:34:1515class FontPrefChangeNotifierFactory : public ProfileKeyedServiceFactory {
Brett Wilson21cf626a2017-09-07 00:30:2016 public:
17 static FontPrefChangeNotifier* GetForProfile(Profile* profile);
18
19 static FontPrefChangeNotifierFactory* GetInstance();
20
21 private:
Mikel Astiz9d3e5802023-05-30 21:42:3022 friend base::NoDestructor<FontPrefChangeNotifierFactory>;
Brett Wilson21cf626a2017-09-07 00:30:2023
24 FontPrefChangeNotifierFactory();
25 ~FontPrefChangeNotifierFactory() override;
26
27 // BrowserContextKeyedServiceFactory overrides:
Arthur Milchior93e5fc432023-08-22 18:29:3928 std::unique_ptr<KeyedService> BuildServiceInstanceForBrowserContext(
Brett Wilson21cf626a2017-09-07 00:30:2029 content::BrowserContext* context) const override;
Brett Wilson21cf626a2017-09-07 00:30:2030};
31
32#endif // CHROME_BROWSER_FONT_PREF_CHANGE_NOTIFIER_FACTORY_H_