| Index: chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h
|
| diff --git a/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h b/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h
|
| index e5e7ffd474d7167cafa3fa700eccf8ffc0cc5ebb..78a97076ab558c650632aa69c6f8915577b1440e 100644
|
| --- a/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h
|
| +++ b/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h
|
| @@ -14,7 +14,9 @@
|
| #include "base/memory/scoped_vector.h"
|
| #include "chrome/browser/browsing_data/browsing_data_remover.h"
|
| #include "chrome/browser/chromeos/login/enrollment/enrollment_screen_actor.h"
|
| +#include "chrome/browser/chromeos/login/ui/webui_login_view.h"
|
| #include "chrome/browser/ui/webui/chromeos/login/base_screen_handler.h"
|
| +#include "chrome/browser/ui/webui/chromeos/login/network_state_informer.h"
|
|
|
| namespace policy {
|
| class PolicyOAuth2TokenFetcher;
|
| @@ -29,9 +31,13 @@ class AuthenticatedUserEmailRetriever;
|
| class EnrollmentScreenHandler
|
| : public BaseScreenHandler,
|
| public EnrollmentScreenActor,
|
| - public BrowsingDataRemover::Observer {
|
| + public BrowsingDataRemover::Observer,
|
| + public NetworkStateInformer::NetworkStateInformerObserver,
|
| + public WebUILoginView::FrameObserver {
|
| public:
|
| - EnrollmentScreenHandler();
|
| + EnrollmentScreenHandler(
|
| + const scoped_refptr<NetworkStateInformer>& network_state_informer,
|
| + ErrorScreenActor* error_screen_actor);
|
| virtual ~EnrollmentScreenHandler();
|
|
|
| // Implements WebUIMessageHandler:
|
| @@ -60,13 +66,26 @@ class EnrollmentScreenHandler
|
| // Implements BrowsingDataRemover::Observer:
|
| virtual void OnBrowsingDataRemoverDone() OVERRIDE;
|
|
|
| + // Implements NetworkStateInformer::NetworkStateInformerObserver
|
| + virtual void UpdateState(ErrorScreenActor::ErrorReason reason) OVERRIDE;
|
| +
|
| + // Implements WebUILoginView::FrameObserver
|
| + virtual void OnFrameError(const std::string& frame_unique_name) OVERRIDE;
|
| +
|
| private:
|
| // Handlers for WebUI messages.
|
| void HandleRetrieveAuthenticatedUserEmail(double attempt_token);
|
| void HandleClose(const std::string& reason);
|
| void HandleCompleteLogin(const std::string& user);
|
| void HandleRetry();
|
| + void HandleFrameLoadingCompleted(int status);
|
| +
|
| + void SetupAndShowOfflineMessage(NetworkStateInformer::State state,
|
| + ErrorScreenActor::ErrorReason reason);
|
| + void HideOfflineMessage(NetworkStateInformer::State state,
|
| + ErrorScreenActor::ErrorReason reason);
|
|
|
| + net::Error frame_error() const { return frame_error_; }
|
| // Shows a given enrollment step.
|
| void ShowStep(const char* step);
|
|
|
| @@ -86,6 +105,16 @@ class EnrollmentScreenHandler
|
| // Shows the screen.
|
| void DoShow();
|
|
|
| + // Returns current visible screen.
|
| + OobeUI::Screen GetCurrentScreen() const;
|
| +
|
| + // Returns true if current visible screen is the enrollment sign-in page.
|
| + bool IsOnEnrollmentScreen() const;
|
| +
|
| + // Returns true if current visible screen is the error screen over
|
| + // enrollment sign-in page.
|
| + bool IsEnrollmentScreenHiddenByError() const;
|
| +
|
| // Keeps the controller for this actor.
|
| Controller* controller_;
|
|
|
| @@ -113,6 +142,16 @@ class EnrollmentScreenHandler
|
| // Helper that retrieves the authenticated user's e-mail address.
|
| scoped_ptr<AuthenticatedUserEmailRetriever> email_retriever_;
|
|
|
| + // Latest enrollment frame error.
|
| + net::Error frame_error_;
|
| +
|
| + // Network state informer used to keep signin screen up.
|
| + scoped_refptr<NetworkStateInformer> network_state_informer_;
|
| +
|
| + ErrorScreenActor* error_screen_actor_;
|
| +
|
| + base::WeakPtrFactory<EnrollmentScreenHandler> weak_ptr_factory_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(EnrollmentScreenHandler);
|
| };
|
|
|
|
|