OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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_CHROMEOS_LOGIN_SCREENS_DEVICE_DISABLED_SCREEN_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_DEVICE_DISABLED_SCREEN_H_ |
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_DEVICE_DISABLED_SCREEN_H_ | 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_DEVICE_DISABLED_SCREEN_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "base/memory/weak_ptr.h" | |
10 #include "chrome/browser/chromeos/login/screens/base_screen.h" | 9 #include "chrome/browser/chromeos/login/screens/base_screen.h" |
11 #include "chrome/browser/chromeos/login/screens/device_disabled_screen_actor.h" | 10 #include "chrome/browser/chromeos/login/screens/device_disabled_screen_actor.h" |
12 | 11 |
13 namespace chromeos { | 12 namespace chromeos { |
14 | 13 |
15 class BaseScreenDelegate; | 14 class BaseScreenDelegate; |
16 | 15 |
17 // Screen informing the user that the device has been disabled by its owner. | 16 // Screen informing the user that the device has been disabled by its owner. |
18 class DeviceDisabledScreen : public BaseScreen, | 17 class DeviceDisabledScreen : public BaseScreen, |
19 public DeviceDisabledScreenActor::Delegate { | 18 public DeviceDisabledScreenActor::Delegate { |
20 public: | 19 public: |
21 DeviceDisabledScreen(BaseScreenDelegate* base_screen_delegate, | 20 DeviceDisabledScreen(BaseScreenDelegate* base_screen_delegate, |
22 DeviceDisabledScreenActor* actor); | 21 DeviceDisabledScreenActor* actor); |
23 ~DeviceDisabledScreen() override; | 22 ~DeviceDisabledScreen() override; |
24 | 23 |
25 // BaseScreen: | 24 // BaseScreen: |
26 void PrepareToShow() override; | 25 void PrepareToShow() override; |
27 void Show() override; | 26 void Show() override; |
28 void Hide() override; | 27 void Hide() override; |
29 std::string GetName() const override; | 28 std::string GetName() const override; |
30 | 29 |
31 // DeviceDisabledScreenActor::Delegate: | 30 // DeviceDisabledScreenActor::Delegate: |
32 void OnActorDestroyed(DeviceDisabledScreenActor* actor) override; | 31 void OnActorDestroyed(DeviceDisabledScreenActor* actor) override; |
33 | 32 |
34 private: | 33 private: |
35 // Indicate to the observer that the screen was skipped because the device is | |
36 // not disabled. | |
37 void IndicateDeviceNotDisabled(); | |
38 | |
39 // Whether the screen is currently showing. | 34 // Whether the screen is currently showing. |
40 bool showing_; | 35 bool showing_; |
41 | 36 |
42 DeviceDisabledScreenActor* actor_; | 37 DeviceDisabledScreenActor* actor_; |
43 | 38 |
44 base::WeakPtrFactory<DeviceDisabledScreen> weak_factory_; | |
45 | |
46 DISALLOW_COPY_AND_ASSIGN(DeviceDisabledScreen); | 39 DISALLOW_COPY_AND_ASSIGN(DeviceDisabledScreen); |
47 }; | 40 }; |
48 | 41 |
49 } // namespace chromeos | 42 } // namespace chromeos |
50 | 43 |
51 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_DEVICE_DISABLED_SCREEN_H_ | 44 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_DEVICE_DISABLED_SCREEN_H_ |
OLD | NEW |