OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_APP_LAUNCH_SPLASH_SCREEN_ACTOR_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_APP_LAUNCH_SPLASH_SCREEN_ACTOR_H_ |
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_APP_LAUNCH_SPLASH_SCREEN_ACTOR_H_ | 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_APP_LAUNCH_SPLASH_SCREEN_ACTOR_H_ |
7 | 7 |
8 #include "base/strings/string16.h" | 8 #include "base/strings/string16.h" |
9 | 9 |
10 namespace chromeos { | 10 namespace chromeos { |
11 | 11 |
12 // Interface for UI implemenations of the ApplaunchSplashScreen. | 12 // Interface for UI implemenations of the ApplaunchSplashScreen. |
13 class AppLaunchSplashScreenActor { | 13 class AppLaunchSplashScreenActor { |
14 public: | 14 public: |
15 enum AppLaunchState { | 15 enum AppLaunchState { |
16 APP_LAUNCH_STATE_LOADING_AUTH_FILE, | 16 APP_LAUNCH_STATE_LOADING_AUTH_FILE, |
17 APP_LAUNCH_STATE_LOADING_TOKEN_SERVICE, | 17 APP_LAUNCH_STATE_LOADING_TOKEN_SERVICE, |
18 APP_LAUNCH_STATE_PREPARING_NETWORK, | 18 APP_LAUNCH_STATE_PREPARING_NETWORK, |
19 APP_LAUNCH_STATE_INSTALLING_APPLICATION, | 19 APP_LAUNCH_STATE_INSTALLING_APPLICATION, |
20 APP_LAUNCH_STATE_WAITING_APP_WINDOW, | 20 APP_LAUNCH_STATE_WAITING_APP_WINDOW, |
21 APP_LAUNCH_STATE_NETWORK_WAIT_TIMEOUT, | 21 APP_LAUNCH_STATE_NETWORK_WAIT_TIMEOUT, |
22 }; | 22 }; |
23 | 23 |
24 class Delegate { | 24 class Delegate { |
25 public: | 25 public: |
| 26 // Invoked when the configure network control is clicked. |
26 virtual void OnConfigureNetwork() = 0; | 27 virtual void OnConfigureNetwork() = 0; |
| 28 |
| 29 // Invoked when the app launch bailout shortcut key is pressed. |
27 virtual void OnCancelAppLaunch() = 0; | 30 virtual void OnCancelAppLaunch() = 0; |
28 | 31 |
| 32 // Invoked when network state is changed. |online| is true if the device |
| 33 // is connected to the Internet. |
| 34 virtual void OnNetworkStateChanged(bool online) = 0; |
| 35 |
29 protected: | 36 protected: |
30 virtual ~Delegate() {} | 37 virtual ~Delegate() {} |
31 }; | 38 }; |
32 | 39 |
33 virtual ~AppLaunchSplashScreenActor() {} | 40 virtual ~AppLaunchSplashScreenActor() {} |
34 | 41 |
35 // Sets screen this actor belongs to. | 42 // Sets screen this actor belongs to. |
36 virtual void SetDelegate(Delegate* screen) = 0; | 43 virtual void SetDelegate(Delegate* screen) = 0; |
37 | 44 |
38 // Prepare the contents to showing. | 45 // Prepare the contents to showing. |
39 virtual void PrepareToShow() = 0; | 46 virtual void PrepareToShow() = 0; |
40 | 47 |
41 // Shows the contents of the screen. | 48 // Shows the contents of the screen. |
42 virtual void Show(const std::string& app_id) = 0; | 49 virtual void Show(const std::string& app_id) = 0; |
43 | 50 |
44 // Hides the contents of the screen. | 51 // Hides the contents of the screen. |
45 virtual void Hide() = 0; | 52 virtual void Hide() = 0; |
46 | 53 |
47 // Set the current app launch state. | 54 // Set the current app launch state. |
48 virtual void UpdateAppLaunchState(AppLaunchState state) = 0; | 55 virtual void UpdateAppLaunchState(AppLaunchState state) = 0; |
49 | 56 |
50 // Sets whether continue control is enabled. | 57 // Sets whether configure network control is visible. |
51 virtual void ToggleNetworkConfig(bool visible) = 0; | 58 virtual void ToggleNetworkConfig(bool visible) = 0; |
| 59 |
| 60 // Shows the network error and configure UI. |
| 61 virtual void ShowNetworkConfigureUI() = 0; |
52 }; | 62 }; |
53 | 63 |
54 } // namespace chromeos | 64 } // namespace chromeos |
55 | 65 |
56 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_APP_LAUNCH_SPLASH_SCREEN_ACTOR_
H_ | 66 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_APP_LAUNCH_SPLASH_SCREEN_ACTOR_
H_ |
OLD | NEW |