Index: chrome/browser/chromeos/login/screens/update_screen.h |
diff --git a/chrome/browser/chromeos/login/screens/update_screen.h b/chrome/browser/chromeos/login/screens/update_screen.h |
index 6b3938920fd0d29d0e66fce322793f2ad42acdb2..e9b291e8b97defb0e77f8d6def7bcf77095d37b7 100644 |
--- a/chrome/browser/chromeos/login/screens/update_screen.h |
+++ b/chrome/browser/chromeos/login/screens/update_screen.h |
@@ -13,8 +13,7 @@ |
#include "base/memory/weak_ptr.h" |
#include "base/time/time.h" |
#include "base/timer/timer.h" |
-#include "chrome/browser/chromeos/login/screens/base_screen.h" |
-#include "chrome/browser/chromeos/login/screens/update_screen_actor.h" |
+#include "chrome/browser/chromeos/login/screens/update_model.h" |
#include "chromeos/dbus/update_engine_client.h" |
#include "chromeos/network/portal_detector/network_portal_detector.h" |
#include "components/pairing/host_pairing_controller.h" |
@@ -26,40 +25,33 @@ class ErrorScreen; |
class ErrorScreensHistogramHelper; |
class NetworkState; |
class ScreenManager; |
+class UpdateView; |
-// Controller for the update screen. It does not depend on the specific |
-// implementation of the screen showing (Views of WebUI based), the dependency |
-// is moved to the UpdateScreenActor instead. |
-class UpdateScreen : public UpdateEngineClient::Observer, |
- public UpdateScreenActor::Delegate, |
- public BaseScreen, |
+// Controller for the update screen. |
+class UpdateScreen : public UpdateModel, |
+ public UpdateEngineClient::Observer, |
public NetworkPortalDetector::Observer { |
public: |
UpdateScreen(BaseScreenDelegate* base_screen_delegate, |
- UpdateScreenActor* actor, |
+ UpdateView* view, |
pairing_chromeos::HostPairingController* remora_controller); |
~UpdateScreen() override; |
static UpdateScreen* Get(ScreenManager* manager); |
- // Overridden from BaseScreen. |
+ // UpdateModel: |
void PrepareToShow() override; |
void Show() override; |
void Hide() override; |
- std::string GetName() const override; |
- |
- // UpdateScreenActor::Delegate implementation: |
- void CancelUpdate() override; |
- void OnActorDestroyed(UpdateScreenActor* actor) override; |
+ void Initialize(::login::ScreenContext* context) override; |
+ void OnViewDestroyed(UpdateView* view) override; |
+ void OnUserAction(const std::string& action_id) override; |
+ void OnContextKeyUpdated(const ::login::ScreenContext::KeyType& key) override; |
void OnConnectToNetworkRequested() override; |
// Starts network check. Made virtual to simplify mocking. |
virtual void StartNetworkCheck(); |
- // Reboot check delay get/set, in seconds. |
- int reboot_check_delay() const { return reboot_check_delay_; } |
- void SetRebootCheckDelay(int seconds); |
- |
// Returns true if this instance is still active (i.e. has not been deleted). |
static bool HasInstance(UpdateScreen* inst); |
@@ -82,6 +74,9 @@ class UpdateScreen : public UpdateEngineClient::Observer, |
const NetworkState* network, |
const NetworkPortalDetector::CaptivePortalState& state) override; |
+ // Skip update UI, usually used only in debug builds/tests. |
+ void CancelUpdate(); |
+ |
private: |
FRIEND_TEST_ALL_PREFIXES(UpdateScreenTest, TestBasic); |
FRIEND_TEST_ALL_PREFIXES(UpdateScreenTest, TestUpdateAvailable); |
@@ -149,8 +144,7 @@ class UpdateScreen : public UpdateEngineClient::Observer, |
// Ignore fist IDLE status that is sent before update screen initiated check. |
bool ignore_idle_status_; |
- // Keeps actor which is delegated with all showing operations. |
- UpdateScreenActor* actor_; |
+ UpdateView* view_; |
// Used to track updates over Bluetooth. |
pairing_chromeos::HostPairingController* remora_controller_; |