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

Unified Diff: chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.cc

Issue 872633008: Migrate (Network)ErrorScreen to ScreenContext (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: nit 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.cc
diff --git a/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.cc b/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.cc
index cf4ea6faa673b5f0e230aef17e27df220dd52573..9da1f6a375c1359a56f9037e45b0ab6e7d720d07 100644
--- a/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.cc
+++ b/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.cc
@@ -13,6 +13,7 @@
#include "base/strings/stringprintf.h"
#include "base/values.h"
#include "chrome/browser/chromeos/login/error_screens_histogram_helper.h"
+#include "chrome/browser/chromeos/login/screens/network_error.h"
#include "chrome/browser/chromeos/login/ui/login_display_host_impl.h"
#include "chrome/browser/chromeos/policy/enrollment_status_chromeos.h"
#include "chrome/browser/chromeos/profiles/profile_helper.h"
@@ -82,16 +83,16 @@ std::string GetNetworkName(const std::string& service_path) {
}
bool IsBehindCaptivePortal(NetworkStateInformer::State state,
- ErrorScreenActor::ErrorReason reason) {
+ NetworkError::ErrorReason reason) {
return state == NetworkStateInformer::CAPTIVE_PORTAL ||
- reason == ErrorScreenActor::ERROR_REASON_PORTAL_DETECTED;
+ reason == NetworkError::ERROR_REASON_PORTAL_DETECTED;
}
bool IsProxyError(NetworkStateInformer::State state,
- ErrorScreenActor::ErrorReason reason) {
+ NetworkError::ErrorReason reason) {
return state == NetworkStateInformer::PROXY_AUTH_REQUIRED ||
- reason == ErrorScreenActor::ERROR_REASON_PROXY_AUTH_CANCELLED ||
- reason == ErrorScreenActor::ERROR_REASON_PROXY_CONNECTION_FAILED;
+ reason == NetworkError::ERROR_REASON_PROXY_AUTH_CANCELLED ||
+ reason == NetworkError::ERROR_REASON_PROXY_CONNECTION_FAILED;
}
} // namespace
@@ -100,7 +101,7 @@ bool IsProxyError(NetworkStateInformer::State state,
EnrollmentScreenHandler::EnrollmentScreenHandler(
const scoped_refptr<NetworkStateInformer>& network_state_informer,
- ErrorScreenActor* error_screen_actor)
+ NetworkErrorModel* network_error_model)
: BaseScreenHandler(kJsScreenPath),
controller_(NULL),
show_on_init_(false),
@@ -108,13 +109,13 @@ EnrollmentScreenHandler::EnrollmentScreenHandler(
first_show_(true),
observe_network_failure_(false),
network_state_informer_(network_state_informer),
- error_screen_actor_(error_screen_actor),
+ network_error_model_(network_error_model),
histogram_helper_(new ErrorScreensHistogramHelper("Enrollment")),
auth_extension_(nullptr),
weak_ptr_factory_(this) {
set_async_assets_load_id(OobeUI::kScreenOobeEnrollment);
DCHECK(network_state_informer_.get());
- DCHECK(error_screen_actor_);
+ DCHECK(network_error_model_);
network_state_informer_->AddObserver(this);
if (chromeos::LoginDisplayHostImpl::default_host()) {
@@ -370,19 +371,18 @@ bool EnrollmentScreenHandler::IsOnEnrollmentScreen() const {
bool EnrollmentScreenHandler::IsEnrollmentScreenHiddenByError() const {
return (GetCurrentScreen() == OobeUI::SCREEN_ERROR_MESSAGE &&
- error_screen_actor_->parent_screen() ==
+ network_error_model_->GetParentScreen() ==
OobeUI::SCREEN_OOBE_ENROLLMENT);
}
-void EnrollmentScreenHandler::UpdateState(
- ErrorScreenActor::ErrorReason reason) {
+void EnrollmentScreenHandler::UpdateState(NetworkError::ErrorReason reason) {
UpdateStateInternal(reason, false);
}
// TODO(rsorokin): This function is mostly copied from SigninScreenHandler and
// should be refactored in the future.
void EnrollmentScreenHandler::UpdateStateInternal(
- ErrorScreenActor::ErrorReason reason,
+ NetworkError::ErrorReason reason,
bool force_update) {
if (!force_update && !IsOnEnrollmentScreen() &&
!IsEnrollmentScreenHiddenByError()) {
@@ -399,14 +399,14 @@ void EnrollmentScreenHandler::UpdateStateInternal(
(state == NetworkStateInformer::CAPTIVE_PORTAL);
const bool is_frame_error =
(frame_error() != net::OK) ||
- (reason == ErrorScreenActor::ERROR_REASON_FRAME_ERROR);
+ (reason == NetworkError::ERROR_REASON_FRAME_ERROR);
LOG(WARNING) << "EnrollmentScreenHandler::UpdateState(): "
<< "state=" << NetworkStateInformer::StatusString(state) << ", "
- << "reason=" << ErrorScreenActor::ErrorReasonString(reason);
+ << "reason=" << NetworkError::ErrorReasonString(reason);
if (is_online || !is_behind_captive_portal)
- error_screen_actor_->HideCaptivePortal();
+ network_error_model_->HideCaptivePortal();
if (is_frame_error) {
LOG(WARNING) << "Retry page load";
@@ -422,55 +422,53 @@ void EnrollmentScreenHandler::UpdateStateInternal(
void EnrollmentScreenHandler::SetupAndShowOfflineMessage(
NetworkStateInformer::State state,
- ErrorScreenActor::ErrorReason reason) {
+ NetworkError::ErrorReason reason) {
const std::string network_path = network_state_informer_->network_path();
const bool is_behind_captive_portal = IsBehindCaptivePortal(state, reason);
const bool is_proxy_error = IsProxyError(state, reason);
const bool is_frame_error =
(frame_error() != net::OK) ||
- (reason == ErrorScreenActor::ERROR_REASON_FRAME_ERROR);
+ (reason == NetworkError::ERROR_REASON_FRAME_ERROR);
if (is_proxy_error) {
- error_screen_actor_->SetErrorState(ErrorScreen::ERROR_STATE_PROXY,
- std::string());
+ network_error_model_->SetErrorState(NetworkError::ERROR_STATE_PROXY,
+ std::string());
} else if (is_behind_captive_portal) {
// Do not bother a user with obsessive captive portal showing. This
// check makes captive portal being shown only once: either when error
// screen is shown for the first time or when switching from another
// error screen (offline, proxy).
- if (IsOnEnrollmentScreen() || (error_screen_actor_->error_state() !=
- ErrorScreen::ERROR_STATE_PORTAL)) {
- error_screen_actor_->FixCaptivePortal();
+ if (IsOnEnrollmentScreen() || (network_error_model_->GetErrorState() !=
+ NetworkError::ERROR_STATE_PORTAL)) {
+ network_error_model_->FixCaptivePortal();
}
const std::string network_name = GetNetworkName(network_path);
- error_screen_actor_->SetErrorState(ErrorScreen::ERROR_STATE_PORTAL,
- network_name);
+ network_error_model_->SetErrorState(NetworkError::ERROR_STATE_PORTAL,
+ network_name);
} else if (is_frame_error) {
- error_screen_actor_->SetErrorState(
- ErrorScreen::ERROR_STATE_AUTH_EXT_TIMEOUT, std::string());
+ network_error_model_->SetErrorState(
+ NetworkError::ERROR_STATE_AUTH_EXT_TIMEOUT, std::string());
} else {
- error_screen_actor_->SetErrorState(ErrorScreen::ERROR_STATE_OFFLINE,
- std::string());
+ network_error_model_->SetErrorState(NetworkError::ERROR_STATE_OFFLINE,
+ std::string());
}
if (GetCurrentScreen() != OobeUI::SCREEN_ERROR_MESSAGE) {
- base::DictionaryValue params;
const std::string network_type = network_state_informer_->network_type();
- params.SetString("lastNetworkType", network_type);
- error_screen_actor_->SetUIState(ErrorScreen::UI_STATE_SIGNIN);
- error_screen_actor_->Show(OobeUI::SCREEN_OOBE_ENROLLMENT,
- &params,
- base::Bind(&EnrollmentScreenHandler::DoShow,
- weak_ptr_factory_.GetWeakPtr()));
- histogram_helper_->OnErrorShow(error_screen_actor_->error_state());
+ network_error_model_->SetUIState(NetworkError::UI_STATE_SIGNIN);
+ network_error_model_->SetParentScreen(OobeUI::SCREEN_OOBE_ENROLLMENT);
+ network_error_model_->SetHideCallback(base::Bind(
+ &EnrollmentScreenHandler::DoShow, weak_ptr_factory_.GetWeakPtr()));
+ network_error_model_->Show();
+ histogram_helper_->OnErrorShow(network_error_model_->GetErrorState());
}
}
void EnrollmentScreenHandler::HideOfflineMessage(
NetworkStateInformer::State state,
- ErrorScreenActor::ErrorReason reason) {
+ NetworkError::ErrorReason reason) {
if (IsEnrollmentScreenHiddenByError())
- error_screen_actor_->Hide();
+ network_error_model_->Hide();
histogram_helper_->OnErrorHide();
}
@@ -511,9 +509,9 @@ void EnrollmentScreenHandler::HandleFrameLoadingCompleted(int status) {
if (network_state_informer_->state() != NetworkStateInformer::ONLINE)
return;
if (frame_error_)
- UpdateState(ErrorScreenActor::ERROR_REASON_FRAME_ERROR);
+ UpdateState(NetworkError::ERROR_REASON_FRAME_ERROR);
else
- UpdateState(ErrorScreenActor::ERROR_REASON_UPDATE);
+ UpdateState(NetworkError::ERROR_REASON_UPDATE);
}
void EnrollmentScreenHandler::ShowStep(const char* step) {
@@ -549,7 +547,7 @@ void EnrollmentScreenHandler::DoShow() {
ShowScreen(OobeUI::kScreenOobeEnrollment, &screen_data);
if (first_show_) {
first_show_ = false;
- UpdateStateInternal(ErrorScreenActor::ERROR_REASON_UPDATE, true);
+ UpdateStateInternal(NetworkError::ERROR_REASON_UPDATE, true);
}
histogram_helper_->OnScreenShow();
}

Powered by Google App Engine
This is Rietveld 408576698