Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(122)

Side by Side Diff: chrome/browser/chromeos/login/screens/network_error_model.cc

Issue 872633008: Migrate (Network)ErrorScreen to ScreenContext (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: cleanup Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "chrome/browser/chromeos/login/screens/network_error_model.h"
6
7 #include "chrome/browser/chromeos/login/wizard_controller.h"
8
9 namespace chromeos {
10
11 const char NetworkErrorModel::kContextKeyErrorStateCode[] = "error-state-code";
12 const char NetworkErrorModel::kContextKeyErrorStateNetwork[] =
13 "error-state-network";
14 const char NetworkErrorModel::kContextKeyGuestSigninAllowed[] =
15 "guest-signin-allowed";
16 const char NetworkErrorModel::kContextKeyOfflineSigninAllowed[] =
17 "offline-signin-allowed";
18 const char NetworkErrorModel::kContextKeyShowConnectingIndicator[] =
19 "show-connecting-indicator";
20 const char NetworkErrorModel::kContextKeyUIState[] = "ui-state";
21 const char NetworkErrorModel::kUserActionConfigureCertsButtonClicked[] =
22 "configure-certs";
23 const char NetworkErrorModel::kUserActionDiagnoseButtonClicked[] = "diagnose";
24 const char NetworkErrorModel::kUserActionLaunchOobeGuestSessionClicked[] =
25 "launch-oobe-guest";
26 const char
27 NetworkErrorModel::kUserActionLocalStateErrorPowerwashButtonClicked[] =
28 "local-state-error-powerwash";
29 const char NetworkErrorModel::kUserActionRebootButtonClicked[] = "reboot";
30 const char NetworkErrorModel::kUserActionShowCaptivePortalClicked[] =
31 "show-captive-portal";
32
33 NetworkErrorModel::NetworkErrorModel(BaseScreenDelegate* base_screen_delegate)
34 : BaseScreen(base_screen_delegate),
35 ui_state_(NetworkError::UI_STATE_UNKNOWN),
36 error_state_(NetworkError::ERROR_STATE_UNKNOWN),
37 parent_screen_(OobeUI::SCREEN_UNKNOWN) {
38 }
39
40 NetworkErrorModel::~NetworkErrorModel() {
41 }
42
43 std::string NetworkErrorModel::GetName() const {
44 return WizardController::kErrorScreenName;
45 }
46
47 void NetworkErrorModel::OnHide() {
48 if (on_hide_) {
49 on_hide_->Run();
50 on_hide_.reset();
51 }
52 }
Denis Kuznetsov (DE-MUC) 2015/02/10 17:03:26 Why is not it purely abstract? I mean, I believe
Nikita (slow) 2015/02/11 12:18:58 Done.
53
54 void NetworkErrorModel::AllowGuestSignin(bool allowed) {
55 GetContextEditor().SetBoolean(kContextKeyGuestSigninAllowed, allowed);
56 }
57
58 void NetworkErrorModel::AllowOfflineLogin(bool allowed) {
59 GetContextEditor().SetBoolean(kContextKeyOfflineSigninAllowed, allowed);
60 }
61
62 void NetworkErrorModel::SetUIState(NetworkError::UIState ui_state) {
63 ui_state_ = ui_state;
64 GetContextEditor().SetInteger(kContextKeyUIState,
65 static_cast<int>(ui_state_));
66 }
67
68 void NetworkErrorModel::SetErrorState(NetworkError::ErrorState error_state,
69 const std::string& network) {
70 error_state_ = error_state;
71 GetContextEditor()
72 .SetInteger(kContextKeyErrorStateCode, static_cast<int>(error_state_))
73 .SetString(kContextKeyErrorStateNetwork, network);
74 }
75
76 void NetworkErrorModel::SetParentScreen(OobeUI::Screen parent_screen) {
77 parent_screen_ = parent_screen;
78 // Not really used on JS side yet so no need to propagate to screen context.
79 }
80
81 void NetworkErrorModel::SetHideCallback(const base::Closure& on_hide) {
82 on_hide_.reset(new base::Closure(on_hide));
83 }
84
85 void NetworkErrorModel::ShowConnectingIndicator(bool show) {
86 GetContextEditor().SetBoolean(kContextKeyShowConnectingIndicator, show);
87 }
88
89 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698