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

Unified Diff: chrome/browser/chromeos/login/managed/locally_managed_user_creation_screen.cc

Issue 13553002: Managed user creation flow: (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 9 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/chromeos/login/managed/locally_managed_user_creation_screen.cc
diff --git a/chrome/browser/chromeos/login/managed/locally_managed_user_creation_screen.cc b/chrome/browser/chromeos/login/managed/locally_managed_user_creation_screen.cc
index 079cfd2042a3ea0f6eed87d58775afc448111337..8e6de8362c185d98d1d5dc7fd1642beee7a87865 100644
--- a/chrome/browser/chromeos/login/managed/locally_managed_user_creation_screen.cc
+++ b/chrome/browser/chromeos/login/managed/locally_managed_user_creation_screen.cc
@@ -4,19 +4,24 @@
#include "chrome/browser/chromeos/login/managed/locally_managed_user_creation_screen.h"
+#include "chrome/browser/chromeos/login/error_screen.h"
#include "chrome/browser/chromeos/login/existing_user_controller.h"
#include "chrome/browser/chromeos/login/managed/locally_managed_user_controller.h"
#include "chrome/browser/chromeos/login/screen_observer.h"
#include "chrome/browser/chromeos/login/wizard_controller.h"
+#include "chrome/browser/chromeos/net/connectivity_state_helper.h"
#include "grit/generated_resources.h"
#include "ui/base/l10n/l10n_util.h"
+
Nikita (slow) 2013/04/03 17:25:41 nit: drop empty line
namespace chromeos {
LocallyManagedUserCreationScreen::LocallyManagedUserCreationScreen(
ScreenObserver* observer,
LocallyManagedUserCreationScreenHandler* actor)
- : WizardScreen(observer), actor_(actor) {
+ : WizardScreen(observer),
+ actor_(actor),
+ on_error_screen_(false) {
DCHECK(actor_);
if (actor_)
actor_->SetDelegate(this);
@@ -37,8 +42,31 @@ void LocallyManagedUserCreationScreen::Show() {
actor_->Show();
actor_->ShowInitialScreen();
}
+ ConnectivityStateHelper* helper = ConnectivityStateHelper::Get();
+ if (helper && !on_error_screen_) {
+ helper->AddNetworkManagerObserver(this);
+ NetworkManagerChanged();
+ }
+ on_error_screen_ = false;
}
+void LocallyManagedUserCreationScreen::NetworkManagerChanged() {
+ ConnectivityStateHelper* helper = ConnectivityStateHelper::Get();
+ if (!helper)
+ return;
+ if (helper->IsConnected()) {
+ // hide error screen
Nikita (slow) 2013/04/03 17:25:41 nit: drop comment
+ get_screen_observer()->HideErrorScreen(this);
+ } else {
+ // show error screen
Nikita (slow) 2013/04/03 17:25:41 nit: drop comment
+ on_error_screen_ = true;
+ get_screen_observer()->
+ GetErrorScreen()->SetUIState(ErrorScreen::UI_STATE_MANAGED);
+ get_screen_observer()->ShowErrorScreen();
ygorshenin1 2013/04/03 17:33:32 What is the error state for the error screen?
+ }
+}
+
+
Nikita (slow) 2013/04/03 17:25:41 nit: drop empty line
void LocallyManagedUserCreationScreen::
ShowManagerInconsistentStateErrorScreen() {
if (!actor_)
@@ -58,6 +86,9 @@ void LocallyManagedUserCreationScreen::ShowInitialScreen() {
void LocallyManagedUserCreationScreen::Hide() {
if (actor_)
actor_->Hide();
+ ConnectivityStateHelper* helper = ConnectivityStateHelper::Get();
+ if (helper && !on_error_screen_)
+ helper->RemoveNetworkManagerObserver(this);
}
std::string LocallyManagedUserCreationScreen::GetName() const {

Powered by Google App Engine
This is Rietveld 408576698