OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_UI_ASH_PALETTE_DELEGATE_CHROMEOS_H_ | 5 #ifndef CHROME_BROWSER_UI_ASH_PALETTE_DELEGATE_CHROMEOS_H_ |
6 #define CHROME_BROWSER_UI_ASH_PALETTE_DELEGATE_CHROMEOS_H_ | 6 #define CHROME_BROWSER_UI_ASH_PALETTE_DELEGATE_CHROMEOS_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "ash/palette_delegate.h" | 10 #include "ash/palette_delegate.h" |
11 #include "base/callback_list.h" | 11 #include "base/callback_list.h" |
12 #include "base/macros.h" | 12 #include "base/macros.h" |
13 #include "base/memory/weak_ptr.h" | 13 #include "base/memory/weak_ptr.h" |
14 #include "base/values.h" | 14 #include "base/values.h" |
15 #include "components/user_manager/user_manager.h" | 15 #include "components/user_manager/user_manager.h" |
16 #include "content/public/browser/notification_observer.h" | 16 #include "content/public/browser/notification_observer.h" |
17 #include "content/public/browser/notification_registrar.h" | 17 #include "content/public/browser/notification_registrar.h" |
18 | 18 |
19 class PrefChangeRegistrar; | 19 class PrefChangeRegistrar; |
20 class Profile; | 20 class Profile; |
21 | 21 |
| 22 namespace ash { |
| 23 class ScreenshotDelegate; |
| 24 } |
| 25 |
22 namespace chromeos { | 26 namespace chromeos { |
23 | 27 |
24 // A class which allows the Ash palette to perform chrome actions. | 28 // A class which allows the Ash palette to perform chrome actions. |
25 class PaletteDelegateChromeOS | 29 class PaletteDelegateChromeOS |
26 : public ash::PaletteDelegate, | 30 : public ash::PaletteDelegate, |
27 public user_manager::UserManager::UserSessionStateObserver, | 31 public user_manager::UserManager::UserSessionStateObserver, |
28 public content::NotificationObserver { | 32 public content::NotificationObserver { |
29 public: | 33 public: |
30 PaletteDelegateChromeOS(); | 34 PaletteDelegateChromeOS(); |
31 ~PaletteDelegateChromeOS() override; | 35 ~PaletteDelegateChromeOS() override; |
(...skipping 26 matching lines...) Expand all Loading... |
58 | 62 |
59 base::CallbackList<void(bool)> palette_enabled_callback_list_; | 63 base::CallbackList<void(bool)> palette_enabled_callback_list_; |
60 | 64 |
61 // Unowned pointer to the active profile. | 65 // Unowned pointer to the active profile. |
62 Profile* profile_ = nullptr; | 66 Profile* profile_ = nullptr; |
63 std::unique_ptr<PrefChangeRegistrar> pref_change_registrar_; | 67 std::unique_ptr<PrefChangeRegistrar> pref_change_registrar_; |
64 std::unique_ptr<user_manager::ScopedUserSessionStateObserver> | 68 std::unique_ptr<user_manager::ScopedUserSessionStateObserver> |
65 session_state_observer_; | 69 session_state_observer_; |
66 content::NotificationRegistrar registrar_; | 70 content::NotificationRegistrar registrar_; |
67 | 71 |
| 72 std::unique_ptr<ash::ScreenshotDelegate> |
| 73 voice_interaction_screenshot_delegate_; |
| 74 |
68 base::WeakPtrFactory<PaletteDelegateChromeOS> weak_factory_; | 75 base::WeakPtrFactory<PaletteDelegateChromeOS> weak_factory_; |
69 | 76 |
70 DISALLOW_COPY_AND_ASSIGN(PaletteDelegateChromeOS); | 77 DISALLOW_COPY_AND_ASSIGN(PaletteDelegateChromeOS); |
71 }; | 78 }; |
72 | 79 |
73 } // namespace chromeos | 80 } // namespace chromeos |
74 | 81 |
75 #endif // CHROME_BROWSER_UI_ASH_PALETTE_DELEGATE_CHROMEOS_H_ | 82 #endif // CHROME_BROWSER_UI_ASH_PALETTE_DELEGATE_CHROMEOS_H_ |
OLD | NEW |