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_HOST_PAIRING_SCREEN_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_HOST_PAIRING_SCREEN_H_ |
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_HOST_PAIRING_SCREEN_H_ | 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_HOST_PAIRING_SCREEN_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "chrome/browser/chromeos/login/screens/host_pairing_screen_actor.h" | 9 #include "chrome/browser/chromeos/login/screens/host_pairing_screen_actor.h" |
10 #include "chrome/browser/chromeos/login/screens/screen_context.h" | 10 #include "chrome/browser/chromeos/login/screens/screen_context.h" |
11 #include "chrome/browser/chromeos/login/screens/wizard_screen.h" | 11 #include "chrome/browser/chromeos/login/screens/wizard_screen.h" |
12 #include "components/pairing/host_pairing_controller.h" | 12 #include "components/pairing/host_pairing_controller.h" |
13 | 13 |
14 namespace chromeos { | 14 namespace chromeos { |
15 | 15 |
16 class HostPairingScreen : | 16 class HostPairingScreen : |
17 public WizardScreen, | 17 public WizardScreen, |
18 public pairing_chromeos::HostPairingController::Observer, | 18 public pairing_chromeos::HostPairingController::Observer, |
19 public HostPairingScreenActor::Delegate { | 19 public HostPairingScreenActor::Delegate { |
20 public: | 20 public: |
21 HostPairingScreen(ScreenObserver* observer, HostPairingScreenActor* actor); | 21 HostPairingScreen(ScreenObserver* observer, HostPairingScreenActor* actor); |
22 virtual ~HostPairingScreen(); | 22 virtual ~HostPairingScreen(); |
23 | 23 |
24 private: | 24 private: |
25 typedef pairing_chromeos::HostPairingController::Stage Stage; | 25 typedef pairing_chromeos::HostPairingController::Stage Stage; |
26 typedef pairing_chromeos::HostPairingController::UpdateProgress | |
27 UpdateProgress; | |
28 | 26 |
29 void CommitContextChanges(); | 27 void CommitContextChanges(); |
30 | 28 |
31 // Overridden from WizardScreen: | 29 // Overridden from WizardScreen: |
32 virtual void PrepareToShow() OVERRIDE; | 30 virtual void PrepareToShow() OVERRIDE; |
33 virtual void Show() OVERRIDE; | 31 virtual void Show() OVERRIDE; |
34 virtual void Hide() OVERRIDE; | 32 virtual void Hide() OVERRIDE; |
35 virtual std::string GetName() const OVERRIDE; | 33 virtual std::string GetName() const OVERRIDE; |
36 | 34 |
37 // Overridden from pairing_chromeos::HostPairingController::Observer: | 35 // pairing_chromeos::HostPairingController::Observer: |
38 virtual void PairingStageChanged(Stage new_stage) OVERRIDE; | 36 virtual void PairingStageChanged(Stage new_stage) OVERRIDE; |
39 virtual void UpdateAdvanced(const UpdateProgress& progress) OVERRIDE; | 37 virtual void ConfigureHost(bool accepted_eula, |
| 38 const std::string& lang, |
| 39 const std::string& timezone, |
| 40 bool send_reports, |
| 41 const std::string& keyboard_layout) OVERRIDE; |
| 42 virtual void EnrollHost(const std::string& auth_token) OVERRIDE; |
40 | 43 |
41 // Overridden from ControllerPairingView::Delegate: | 44 // Overridden from ControllerPairingView::Delegate: |
42 virtual void OnActorDestroyed(HostPairingScreenActor* actor) OVERRIDE; | 45 virtual void OnActorDestroyed(HostPairingScreenActor* actor) OVERRIDE; |
43 | 46 |
44 // Context for sharing data between C++ and JS. | 47 // Context for sharing data between C++ and JS. |
45 // TODO(dzhioev): move to BaseScreen when possible. | 48 // TODO(dzhioev): move to BaseScreen when possible. |
46 ScreenContext context_; | 49 ScreenContext context_; |
47 | 50 |
48 HostPairingScreenActor* actor_; | 51 HostPairingScreenActor* actor_; |
49 | 52 |
50 // Controller performing pairing. Owned by the screen for now. | 53 // Controller performing pairing. Owned by the screen for now. |
51 // TODO(dzhioev): move to proper place later. | 54 // TODO(dzhioev): move to proper place later. |
52 scoped_ptr<pairing_chromeos::HostPairingController> controller_; | 55 scoped_ptr<pairing_chromeos::HostPairingController> controller_; |
53 | 56 |
54 // Current stage of pairing process. | 57 // Current stage of pairing process. |
55 Stage current_stage_; | 58 Stage current_stage_; |
56 | 59 |
57 DISALLOW_COPY_AND_ASSIGN(HostPairingScreen); | 60 DISALLOW_COPY_AND_ASSIGN(HostPairingScreen); |
58 }; | 61 }; |
59 | 62 |
60 } // namespace chromeos | 63 } // namespace chromeos |
61 | 64 |
62 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_HOST_PAIRING_SCREEN_H_ | 65 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_HOST_PAIRING_SCREEN_H_ |
OLD | NEW |