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

Unified Diff: chrome/browser/ui/webui/chromeos/login/reset_screen_handler.h

Issue 928513002: Revert of Reset Screen moved to ScreenContext. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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/reset_screen_handler.h
diff --git a/chrome/browser/ui/webui/chromeos/login/reset_screen_handler.h b/chrome/browser/ui/webui/chromeos/login/reset_screen_handler.h
index aeb8fb474f01a871fa2037038bf811f3ff55372c..01eb4af6854d0ab962544d57172abbda517191ab 100644
--- a/chrome/browser/ui/webui/chromeos/login/reset_screen_handler.h
+++ b/chrome/browser/ui/webui/chromeos/login/reset_screen_handler.h
@@ -6,8 +6,12 @@
#define CHROME_BROWSER_UI_WEBUI_CHROMEOS_LOGIN_RESET_SCREEN_HANDLER_H_
#include "base/compiler_specific.h"
-#include "chrome/browser/chromeos/login/screens/reset_view.h"
+#include "base/memory/ref_counted.h"
+#include "base/memory/weak_ptr.h"
+#include "chrome/browser/chromeos/login/help_app_launcher.h"
+#include "chrome/browser/chromeos/login/screens/reset_screen_actor.h"
#include "chrome/browser/ui/webui/chromeos/login/base_screen_handler.h"
+#include "chromeos/dbus/update_engine_client.h"
#include "content/public/browser/web_ui.h"
class PrefRegistrySimple;
@@ -15,33 +19,73 @@
namespace chromeos {
// WebUI implementation of ResetScreenActor.
-class ResetScreenHandler : public ResetView,
- public BaseScreenHandler {
+class ResetScreenHandler : public ResetScreenActor,
+ public BaseScreenHandler,
+ public UpdateEngineClient::Observer {
public:
ResetScreenHandler();
~ResetScreenHandler() override;
- // ResetView implementation:
- void Bind(ResetModel& model) override;
- void Unbind() override;
+ // ResetScreenActor implementation:
void PrepareToShow() override;
void Show() override;
void Hide() override;
+ void SetDelegate(Delegate* delegate) override;
// BaseScreenHandler implementation:
void DeclareLocalizedValues(
::login::LocalizedValuesBuilder* builder) override;
void Initialize() override;
+ // WebUIMessageHandler implementation:
+ void RegisterMessages() override;
+
+ // UpdateEngineClient::Observer implementation:
+ void UpdateStatusChanged(const UpdateEngineClient::Status& status) override;
+
+ void OnRollbackCheck(bool can_rollback);
+
// Registers Local State preferences.
static void RegisterPrefs(PrefRegistrySimple* registry);
private:
+ // JS messages handlers.
+ void HandleOnCancel();
+ void HandleOnRestart();
+ void HandleOnPowerwash(bool rollback_checked);
+ void HandleOnLearnMore();
+ void HandleOnToggleRollback();
+ void HandleOnShowConfirm();
- ResetModel* model_;
+ void ChooseAndApplyShowScenario();
+ void ShowWithParams();
+
+ Delegate* delegate_;
+
+ // Help application used for help dialogs.
+ scoped_refptr<HelpAppLauncher> help_app_;
// Keeps whether screen should be shown right after initialization.
bool show_on_init_;
+
+ // Keeps whether restart is required before reset.
+ // False if first exec after boot.
+ bool restart_required_;
+
+ // Keeps whether previous reboot was requested from reset screen. Makes sense
+ // for first exec after boot situation.
+ bool reboot_was_requested_;
+
+ // Keeps whether rollback option is available.
+ bool rollback_available_;
+
+ // Keeps whether rollback option is active at the screen.
+ bool rollback_checked_;
+
+ // Whether rollback is initiated. Prevents screen-hide.
+ bool preparing_for_rollback_;
+
+ base::WeakPtrFactory<ResetScreenHandler> weak_ptr_factory_;
DISALLOW_COPY_AND_ASSIGN(ResetScreenHandler);
};
« no previous file with comments | « chrome/browser/ui/webui/chromeos/login/oobe_ui.cc ('k') | chrome/browser/ui/webui/chromeos/login/reset_screen_handler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698