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..1034f484367531668425642df0be53b6ed73c7f1 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,33 @@ class EnrollmentScreenHandler |
// Implements BrowsingDataRemover::Observer: |
virtual void OnBrowsingDataRemoverDone() OVERRIDE; |
+ // Implements NetworkStateInformer::NetworkStateInformerObserver |
+ virtual void UpdateState(ErrorScreenActor::ErrorReason reason) OVERRIDE; |
+ |
+ // |
+ virtual void DidFailProvisionalLoad( |
+ int64 frame_id, |
+ const base::string16& frame_unique_name, |
+ bool is_main_frame, |
+ const GURL& validated_url, |
+ int error_code, |
+ const base::string16& error_description, |
+ content::RenderViewHost* render_view_host) 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 FrameError() const { return frame_error_; } |
// Shows a given enrollment step. |
void ShowStep(const char* step); |
@@ -86,6 +112,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. |
ygorshenin1
2014/06/19 18:28:53
nit: s/Enrollment/enrollment/
Roman Sorokin (ftl)
2014/06/23 12:58:30
Done.
|
+ bool IsOnEnrollmentScreen() const; |
+ |
+ // Returns true if current visible screen is the error screen over |
+ // Enrollment sign-in page. |
+ bool IsEnrollmentScreenHiddenByError() const; |
ygorshenin1
2014/06/19 18:28:53
nit: s/Enrollment/enrollment/
Roman Sorokin (ftl)
2014/06/23 12:58:30
Done.
|
+ |
// Keeps the controller for this actor. |
Controller* controller_; |
@@ -113,6 +149,14 @@ class EnrollmentScreenHandler |
// Helper that retrieves the authenticated user's e-mail address. |
scoped_ptr<AuthenticatedUserEmailRetriever> email_retriever_; |
+ // Latest Enrollment frame error. |
ygorshenin1
2014/06/19 18:28:53
nit: s/Enrollment/enrollment/
Roman Sorokin (ftl)
2014/06/23 12:58:30
Done.
|
+ net::Error frame_error_; |
+ |
+ // Network state informer used to keep signin screen up. |
+ scoped_refptr<NetworkStateInformer> network_state_informer_; |
+ |
+ ErrorScreenActor* error_screen_actor_; |
+ |
DISALLOW_COPY_AND_ASSIGN(EnrollmentScreenHandler); |
}; |