Infobar material design refresh: layout
[chromium-blink-merge.git] / chrome / browser / ui / gesture_prefs_observer_factory_aura.h
blobbd3514a086f8465f046ec5a0d2c0e30ff1756e4a
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.
5 #ifndef CHROME_BROWSER_UI_GESTURE_PREFS_OBSERVER_FACTORY_AURA_H_
6 #define CHROME_BROWSER_UI_GESTURE_PREFS_OBSERVER_FACTORY_AURA_H_
8 #include "base/basictypes.h"
9 #include "base/memory/singleton.h"
10 #include "components/keyed_service/content/browser_context_keyed_service_factory.h"
12 class PrefService;
13 class Profile;
15 // Create an observer per Profile that listens for gesture preferences updates.
16 class GesturePrefsObserverFactoryAura
17 : public BrowserContextKeyedServiceFactory {
18 public:
19 static GesturePrefsObserverFactoryAura* GetInstance();
21 private:
22 friend struct DefaultSingletonTraits<GesturePrefsObserverFactoryAura>;
24 GesturePrefsObserverFactoryAura();
25 ~GesturePrefsObserverFactoryAura() override;
27 void RegisterOverscrollPrefs(user_prefs::PrefRegistrySyncable* registry);
29 // BrowserContextKeyedServiceFactory:
30 KeyedService* BuildServiceInstanceFor(
31 content::BrowserContext* profile) const override;
32 void RegisterProfilePrefs(
33 user_prefs::PrefRegistrySyncable* registry) override;
34 bool ServiceIsCreatedWithBrowserContext() const override;
35 content::BrowserContext* GetBrowserContextToUse(
36 content::BrowserContext* context) const override;
37 bool ServiceIsNULLWhileTesting() const override;
39 DISALLOW_COPY_AND_ASSIGN(GesturePrefsObserverFactoryAura);
42 #endif // CHROME_BROWSER_UI_GESTURE_PREFS_OBSERVER_FACTORY_AURA_H_