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

Unified Diff: chrome/browser/ui/webui/chromeos/login/arc_terms_of_service_screen_handler.cc

Issue 2561023002: arc: ARC loading progress should not be shown when started from OOBE. (Closed)
Patch Set: comments addresses Created 4 years 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/arc_terms_of_service_screen_handler.cc
diff --git a/chrome/browser/ui/webui/chromeos/login/arc_terms_of_service_screen_handler.cc b/chrome/browser/ui/webui/chromeos/login/arc_terms_of_service_screen_handler.cc
index a0916534bfeef859cc9cd542a1cefc330c2add8c..f64b01d3e8f2b573ff6b0fb235879a1ca41de42a 100644
--- a/chrome/browser/ui/webui/chromeos/login/arc_terms_of_service_screen_handler.cc
+++ b/chrome/browser/ui/webui/chromeos/login/arc_terms_of_service_screen_handler.cc
@@ -6,6 +6,7 @@
#include "base/i18n/timezone.h"
#include "chrome/browser/chromeos/arc/optin/arc_optin_preference_handler.h"
+#include "chrome/browser/chromeos/login/screens/arc_terms_of_service_screen_actor_observer.h"
#include "chrome/browser/chromeos/profiles/profile_helper.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_manager.h"
@@ -30,8 +31,8 @@ ArcTermsOfServiceScreenHandler::ArcTermsOfServiceScreenHandler()
ArcTermsOfServiceScreenHandler::~ArcTermsOfServiceScreenHandler() {
system::TimezoneSettings::GetInstance()->RemoveObserver(this);
- if (screen_)
- screen_->OnActorDestroyed(this);
+ for (auto& observer : observer_list_)
+ observer.OnActorDestroyed(this);
}
void ArcTermsOfServiceScreenHandler::RegisterMessages() {
@@ -113,8 +114,14 @@ void ArcTermsOfServiceScreenHandler::OnLocationServicesModeChanged(
CallJS("setLocationServicesMode", enabled, managed);
}
-void ArcTermsOfServiceScreenHandler::SetDelegate(Delegate* screen) {
- screen_ = screen;
+void ArcTermsOfServiceScreenHandler::AddObserver(
+ ArcTermsOfServiceScreenActorObserver* observer) {
+ observer_list_.AddObserver(observer);
+}
+
+void ArcTermsOfServiceScreenHandler::RemoveObserver(
+ ArcTermsOfServiceScreenActorObserver* observer) {
+ observer_list_.RemoveObserver(observer);
}
void ArcTermsOfServiceScreenHandler::Show() {
@@ -153,18 +160,17 @@ void ArcTermsOfServiceScreenHandler::DoShow() {
}
void ArcTermsOfServiceScreenHandler::HandleSkip() {
- if (screen_)
- screen_->OnSkip();
+ for (auto& observer : observer_list_)
+ observer.OnSkip();
}
void ArcTermsOfServiceScreenHandler::HandleAccept(
bool enable_backup_restore,
bool enable_location_services) {
- if (screen_) {
- pref_handler_->EnableBackupRestore(enable_backup_restore);
- pref_handler_->EnableLocationService(enable_location_services);
- screen_->OnAccept();
- }
+ pref_handler_->EnableBackupRestore(enable_backup_restore);
+ pref_handler_->EnableLocationService(enable_location_services);
+ for (auto& observer : observer_list_)
+ observer.OnAccept();
}
} // namespace chromeos

Powered by Google App Engine
This is Rietveld 408576698