Commit c097a72d authored by jdufault's avatar jdufault Committed by Commit bot

cros: Fold ResetModel into ResetScreen

BUG=672142

Review-Url: https://codereview.chromium.org/2657953005
Cr-Commit-Position: refs/heads/master@{#447921}
parent 51caab48
...@@ -811,8 +811,6 @@ source_set("chromeos") { ...@@ -811,8 +811,6 @@ source_set("chromeos") {
"login/screens/network_screen.cc", "login/screens/network_screen.cc",
"login/screens/network_screen.h", "login/screens/network_screen.h",
"login/screens/network_view.h", "login/screens/network_view.h",
"login/screens/reset_model.cc",
"login/screens/reset_model.h",
"login/screens/reset_screen.cc", "login/screens/reset_screen.cc",
"login/screens/reset_screen.h", "login/screens/reset_screen.h",
"login/screens/reset_view.h", "login/screens/reset_view.h",
......
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/chromeos/login/screens/reset_model.h"
#include "chrome/browser/chromeos/login/wizard_controller.h"
namespace chromeos {
const char ResetModel::kUserActionCancelReset[] = "cancel-reset";
const char ResetModel::kUserActionResetRestartPressed[] = "restart-pressed";
const char ResetModel::kUserActionResetPowerwashPressed[] = "powerwash-pressed";
const char ResetModel::kUserActionResetLearnMorePressed[] = "learn-more-link";
const char ResetModel::kUserActionResetRollbackToggled[] = "rollback-toggled";
const char ResetModel::kUserActionResetShowConfirmationPressed[] =
"show-confirmation";
const char ResetModel::kUserActionResetResetConfirmationDismissed[] =
"reset-confirm-dismissed";
const char ResetModel::kContextKeyIsRestartRequired[] = "restart-required";
const char ResetModel::kContextKeyIsRollbackAvailable[] = "rollback-available";
const char ResetModel::kContextKeyIsRollbackChecked[] = "rollback-checked";
const char ResetModel::kContextKeyIsConfirmational[] = "is-confirmational-view";
const char ResetModel::kContextKeyIsOfficialBuild[] = "is-official-build";
const char ResetModel::kContextKeyScreenState[] = "screen-state";
ResetModel::ResetModel(BaseScreenDelegate* base_screen_delegate)
: BaseScreen(base_screen_delegate, OobeScreen::SCREEN_OOBE_RESET) {}
ResetModel::~ResetModel() {}
} // namespace chromeos
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_RESET_MODEL_H_
#define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_RESET_MODEL_H_
#include <string>
#include "chrome/browser/chromeos/login/screens/base_screen.h"
namespace chromeos {
class BaseScreenDelegate;
class ResetView;
class ResetModel : public BaseScreen {
public:
static const char kUserActionCancelReset[];
static const char kUserActionResetRestartPressed[];
static const char kUserActionResetPowerwashPressed[];
static const char kUserActionResetLearnMorePressed[];
static const char kUserActionResetRollbackToggled[];
static const char kUserActionResetShowConfirmationPressed[];
static const char kUserActionResetResetConfirmationDismissed[];
static const char kContextKeyIsRestartRequired[];
static const char kContextKeyIsRollbackAvailable[];
static const char kContextKeyIsRollbackChecked[];
static const char kContextKeyIsConfirmational[];
static const char kContextKeyIsOfficialBuild[];
static const char kContextKeyScreenState[];
explicit ResetModel(BaseScreenDelegate* base_screen_delegate);
~ResetModel() override;
// Called when actor is destroyed so there's no dead reference to it.
virtual void OnViewDestroyed(ResetView* view) = 0;
};
} // namespace chromeos
#endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_RESET_MODEL_H_
...@@ -24,15 +24,34 @@ ...@@ -24,15 +24,34 @@
namespace chromeos { namespace chromeos {
namespace {
constexpr const char kUserActionCancelReset[] = "cancel-reset";
constexpr const char kUserActionResetRestartPressed[] = "restart-pressed";
constexpr const char kUserActionResetPowerwashPressed[] = "powerwash-pressed";
constexpr const char kUserActionResetLearnMorePressed[] = "learn-more-link";
constexpr const char kUserActionResetRollbackToggled[] = "rollback-toggled";
constexpr const char kUserActionResetShowConfirmationPressed[] =
"show-confirmation";
constexpr const char kUserActionResetResetConfirmationDismissed[] =
"reset-confirm-dismissed";
constexpr const char kContextKeyIsRollbackAvailable[] = "rollback-available";
constexpr const char kContextKeyIsRollbackChecked[] = "rollback-checked";
constexpr const char kContextKeyIsConfirmational[] = "is-confirmational-view";
constexpr const char kContextKeyIsOfficialBuild[] = "is-official-build";
constexpr const char kContextKeyScreenState[] = "screen-state";
} // namespace
ResetScreen::ResetScreen(BaseScreenDelegate* base_screen_delegate, ResetScreen::ResetScreen(BaseScreenDelegate* base_screen_delegate,
ResetView* view) ResetView* view)
: ResetModel(base_screen_delegate), : BaseScreen(base_screen_delegate, OobeScreen::SCREEN_OOBE_RESET),
view_(view), view_(view),
weak_ptr_factory_(this) { weak_ptr_factory_(this) {
DCHECK(view_); DCHECK(view_);
if (view_) if (view_)
view_->Bind(*this); view_->Bind(this);
context_.SetInteger(kContextKeyScreenState, STATE_RESTART_REQUIRED); context_.SetInteger(kContextKeyScreenState, STATE_RESTART_REQUIRED);
context_.SetBoolean(kContextKeyIsRollbackAvailable, false); context_.SetBoolean(kContextKeyIsRollbackAvailable, false);
context_.SetBoolean(kContextKeyIsRollbackChecked, false); context_.SetBoolean(kContextKeyIsRollbackChecked, false);
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
#include "base/memory/ref_counted.h" #include "base/memory/ref_counted.h"
#include "base/memory/weak_ptr.h" #include "base/memory/weak_ptr.h"
#include "chrome/browser/chromeos/login/help_app_launcher.h" #include "chrome/browser/chromeos/login/help_app_launcher.h"
#include "chrome/browser/chromeos/login/screens/reset_model.h" #include "chrome/browser/chromeos/login/screens/base_screen.h"
#include "chromeos/dbus/update_engine_client.h" #include "chromeos/dbus/update_engine_client.h"
...@@ -22,17 +22,19 @@ class ErrorScreen; ...@@ -22,17 +22,19 @@ class ErrorScreen;
class ResetView; class ResetView;
// Representation independent class that controls screen showing reset to users. // Representation independent class that controls screen showing reset to users.
class ResetScreen : public ResetModel, class ResetScreen : public BaseScreen, public UpdateEngineClient::Observer {
public UpdateEngineClient::Observer {
public: public:
ResetScreen(BaseScreenDelegate* base_screen_delegate, ResetScreen(BaseScreenDelegate* base_screen_delegate,
ResetView* view); ResetView* view);
~ResetScreen() override; ~ResetScreen() override;
// ResetModel implementation: // Called when actor is destroyed so there's no dead reference to it.
void OnViewDestroyed(ResetView* view);
private:
// BaseScreen implementation:
void Show() override; void Show() override;
void Hide() override; void Hide() override;
void OnViewDestroyed(ResetView* view) override;
void OnUserAction(const std::string& action_id) override; void OnUserAction(const std::string& action_id) override;
// UpdateEngineClient::Observer implementation: // UpdateEngineClient::Observer implementation:
...@@ -40,8 +42,6 @@ class ResetScreen : public ResetModel, ...@@ -40,8 +42,6 @@ class ResetScreen : public ResetModel,
void OnRollbackCheck(bool can_rollback); void OnRollbackCheck(bool can_rollback);
private:
enum State { enum State {
STATE_RESTART_REQUIRED = 0, STATE_RESTART_REQUIRED = 0,
STATE_REVERT_PROMISE, STATE_REVERT_PROMISE,
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
namespace chromeos { namespace chromeos {
class ResetModel; class ResetScreen;
// Interface for dependency injection between ResetScreen and its actual // Interface for dependency injection between ResetScreen and its actual
// representation, either views based or WebUI. // representation, either views based or WebUI.
...@@ -15,7 +15,7 @@ class ResetView { ...@@ -15,7 +15,7 @@ class ResetView {
public: public:
virtual ~ResetView() {} virtual ~ResetView() {}
virtual void Bind(ResetModel& model) = 0; virtual void Bind(ResetScreen* screen) = 0;
virtual void Unbind() = 0; virtual void Unbind() = 0;
virtual void Show() = 0; virtual void Show() = 0;
virtual void Hide() = 0; virtual void Hide() = 0;
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
#include "chrome/browser/browser_process.h" #include "chrome/browser/browser_process.h"
#include "chrome/browser/chromeos/login/help_app_launcher.h" #include "chrome/browser/chromeos/login/help_app_launcher.h"
#include "chrome/browser/chromeos/login/oobe_screen.h" #include "chrome/browser/chromeos/login/oobe_screen.h"
#include "chrome/browser/chromeos/login/screens/reset_model.h" #include "chrome/browser/chromeos/login/screens/reset_screen.h"
#include "chrome/common/pref_names.h" #include "chrome/common/pref_names.h"
#include "chrome/grit/chromium_strings.h" #include "chrome/grit/chromium_strings.h"
#include "chrome/grit/generated_resources.h" #include "chrome/grit/generated_resources.h"
...@@ -27,15 +27,11 @@ const char kJsScreenPath[] = "login.ResetScreen"; ...@@ -27,15 +27,11 @@ const char kJsScreenPath[] = "login.ResetScreen";
namespace chromeos { namespace chromeos {
ResetScreenHandler::ResetScreenHandler() ResetScreenHandler::ResetScreenHandler() : BaseScreenHandler(kJsScreenPath) {}
: BaseScreenHandler(kJsScreenPath),
model_(nullptr),
show_on_init_(false) {
}
ResetScreenHandler::~ResetScreenHandler() { ResetScreenHandler::~ResetScreenHandler() {
if (model_) if (screen_)
model_->OnViewDestroyed(this); screen_->OnViewDestroyed(this);
} }
void ResetScreenHandler::Show() { void ResetScreenHandler::Show() {
...@@ -107,13 +103,13 @@ void ResetScreenHandler::Initialize() { ...@@ -107,13 +103,13 @@ void ResetScreenHandler::Initialize() {
} }
} }
void ResetScreenHandler::Bind(ResetModel& model) { void ResetScreenHandler::Bind(ResetScreen* screen) {
model_ = &model; screen_ = screen;
BaseScreenHandler::SetBaseScreen(model_); BaseScreenHandler::SetBaseScreen(screen_);
} }
void ResetScreenHandler::Unbind() { void ResetScreenHandler::Unbind() {
model_ = nullptr; screen_ = nullptr;
BaseScreenHandler::SetBaseScreen(nullptr); BaseScreenHandler::SetBaseScreen(nullptr);
} }
......
...@@ -23,7 +23,7 @@ class ResetScreenHandler : public ResetView, ...@@ -23,7 +23,7 @@ class ResetScreenHandler : public ResetView,
~ResetScreenHandler() override; ~ResetScreenHandler() override;
// ResetView implementation: // ResetView implementation:
void Bind(ResetModel& model) override; void Bind(ResetScreen* screen) override;
void Unbind() override; void Unbind() override;
void Show() override; void Show() override;
void Hide() override; void Hide() override;
...@@ -37,11 +37,10 @@ class ResetScreenHandler : public ResetView, ...@@ -37,11 +37,10 @@ class ResetScreenHandler : public ResetView,
static void RegisterPrefs(PrefRegistrySimple* registry); static void RegisterPrefs(PrefRegistrySimple* registry);
private: private:
ResetScreen* screen_ = nullptr;
ResetModel* model_; // If true, Initialize() will call Show().
bool show_on_init_ = false;
// Keeps whether screen should be shown right after initialization.
bool show_on_init_;
DISALLOW_COPY_AND_ASSIGN(ResetScreenHandler); DISALLOW_COPY_AND_ASSIGN(ResetScreenHandler);
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment