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

Unified Diff: chrome/browser/chromeos/arc/optin/arc_terms_of_service_initial_oobe_negotiator_for_managed_user.h

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/chromeos/arc/optin/arc_terms_of_service_initial_oobe_negotiator_for_managed_user.h
diff --git a/chrome/browser/chromeos/arc/optin/arc_terms_of_service_initial_oobe_negotiator_for_managed_user.h b/chrome/browser/chromeos/arc/optin/arc_terms_of_service_initial_oobe_negotiator_for_managed_user.h
new file mode 100644
index 0000000000000000000000000000000000000000..7193e33c21edcbfa6c2b07e26857b0bc05a8db61
--- /dev/null
+++ b/chrome/browser/chromeos/arc/optin/arc_terms_of_service_initial_oobe_negotiator_for_managed_user.h
@@ -0,0 +1,48 @@
+// Copyright 2016 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_ARC_OPTIN_ARC_TERMS_OF_SERVICE_INITIAL_OOBE_NEGOTIATOR_FOR_MANAGED_USER_H_
+#define CHROME_BROWSER_CHROMEOS_ARC_OPTIN_ARC_TERMS_OF_SERVICE_INITIAL_OOBE_NEGOTIATOR_FOR_MANAGED_USER_H_
+
+#include "base/macros.h"
+#include "chrome/browser/chromeos/arc/optin/arc_terms_of_service_negotiator.h"
+#include "chrome/browser/chromeos/login/screens/arc_terms_of_service_screen_actor_observer.h"
+
+namespace arc {
+
+// Handles the Terms-of-service acceptance action for Arc managed user via OOBE
+// OptIn UI. ArcTermsOfServiceInitialOobeNegotiatorForManagedUser is created
+// after user passes GAIA credentials and before showing post wizard pages,
+// including ARC OptIn OOBE. chromeos::ArcTermsOfServiceScreenActor is created
+// during OOBE UI initialization and available on the moment of creation this
+// negotiator. Once user accepts/rejects Terms Of Service, this event get
+// dispatched to ArcSessionManager and this negotiator is deleted.
+class ArcTermsOfServiceInitialOobeNegotiatorForManagedUser
+ : public ArcTermsOfServiceNegotiator,
+ public chromeos::ArcTermsOfServiceScreenActorObserver {
+ public:
+ ArcTermsOfServiceInitialOobeNegotiatorForManagedUser();
+ ~ArcTermsOfServiceInitialOobeNegotiatorForManagedUser() override;
+
+ static void SetArcTermsOfServiceScreenActorForTesting(
+ chromeos::ArcTermsOfServiceScreenActor* actor);
+
+ private:
+ void HandleTermsAccepted(bool accepted);
+
+ // chromeos::ArcTermsOfServiceScreenActorObserver:
+ void OnSkip() override;
+ void OnAccept() override;
+ void OnActorDestroyed(chromeos::ArcTermsOfServiceScreenActor* actor) override;
+
+ // ArcTermsOfServiceNegotiator:
+ void StartNegotiationImpl() override;
+
+ DISALLOW_COPY_AND_ASSIGN(
+ ArcTermsOfServiceInitialOobeNegotiatorForManagedUser);
+};
+
+} // namespace arc
+
+#endif // CHROME_BROWSER_CHROMEOS_ARC_OPTIN_ARC_TERMS_OF_SERVICE_INITIAL_OOBE_NEGOTIATOR_FOR_MANAGED_USER_H_

Powered by Google App Engine
This is Rietveld 408576698