Chromium Code Reviews| Index: chrome/browser/chromeos/arc/optin/arc_terms_of_service_default_negotiator.cc |
| diff --git a/chrome/browser/chromeos/arc/optin/arc_terms_of_service_negotiator.cc b/chrome/browser/chromeos/arc/optin/arc_terms_of_service_default_negotiator.cc |
| similarity index 60% |
| copy from chrome/browser/chromeos/arc/optin/arc_terms_of_service_negotiator.cc |
| copy to chrome/browser/chromeos/arc/optin/arc_terms_of_service_default_negotiator.cc |
| index 8214aa5a26e785c318d8f025bf1b5c23a5790db3..ca0fe339fb59128b7a44c4f9c2dadb84d2084f20 100644 |
| --- a/chrome/browser/chromeos/arc/optin/arc_terms_of_service_negotiator.cc |
| +++ b/chrome/browser/chromeos/arc/optin/arc_terms_of_service_default_negotiator.cc |
| @@ -2,18 +2,16 @@ |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| -#include "chrome/browser/chromeos/arc/optin/arc_terms_of_service_negotiator.h" |
| +#include "chrome/browser/chromeos/arc/optin/arc_terms_of_service_default_negotiator.h" |
| #include <string> |
| -#include "base/callback_helpers.h" |
| -#include "base/macros.h" |
| #include "base/memory/ptr_util.h" |
| #include "chrome/browser/chromeos/arc/optin/arc_optin_preference_handler.h" |
| namespace arc { |
| -ArcTermsOfServiceNegotiator::ArcTermsOfServiceNegotiator( |
| +ArcTermsOfServiceDefaultNegotiator::ArcTermsOfServiceDefaultNegotiator( |
| PrefService* pref_service, |
| ArcSupportHost* support_host) |
| : pref_service_(pref_service), support_host_(support_host) { |
| @@ -21,15 +19,12 @@ ArcTermsOfServiceNegotiator::ArcTermsOfServiceNegotiator( |
| DCHECK(support_host_); |
| } |
| -ArcTermsOfServiceNegotiator::~ArcTermsOfServiceNegotiator() { |
| +ArcTermsOfServiceDefaultNegotiator::~ArcTermsOfServiceDefaultNegotiator() { |
| support_host_->RemoveObserver(this); |
| } |
| -void ArcTermsOfServiceNegotiator::StartNegotiation( |
| - const NegotiationCallback& callback) { |
| - DCHECK(pending_callback_.is_null()); |
| +void ArcTermsOfServiceDefaultNegotiator::StartNegotiationImpl() { |
| DCHECK(!preference_handler_); |
| - pending_callback_ = callback; |
| preference_handler_ = |
| base::MakeUnique<ArcOptInPreferenceHandler>(this, pref_service_); |
| // This automatically updates all preferences. |
| @@ -39,22 +34,20 @@ void ArcTermsOfServiceNegotiator::StartNegotiation( |
| support_host_->ShowTermsOfService(); |
| } |
| -void ArcTermsOfServiceNegotiator::OnWindowClosed() { |
| - DCHECK(!pending_callback_.is_null()); |
| +void ArcTermsOfServiceDefaultNegotiator::OnWindowClosed() { |
| + // User cancels terms-of-service agreement UI by clicking "Cancel" button |
|
hidehiko
2016/12/19 15:49:44
As you're here, could you s/agreement/accepting/,
khmel
2016/12/19 17:48:10
Done.
|
| + // or closing the window directly. |
| DCHECK(preference_handler_); |
| support_host_->RemoveObserver(this); |
| preference_handler_.reset(); |
| - // User cancels terms-of-service agreement UI by clicking "Cancel" button |
| - // or closing the window directly. |
| - base::ResetAndReturn(&pending_callback_).Run(false); |
| + ReportResult(false); |
| } |
| -void ArcTermsOfServiceNegotiator::OnTermsAgreed( |
| +void ArcTermsOfServiceDefaultNegotiator::OnTermsAgreed( |
| bool is_metrics_enabled, |
| bool is_backup_and_restore_enabled, |
| bool is_location_service_enabled) { |
| - DCHECK(!pending_callback_.is_null()); |
| DCHECK(preference_handler_); |
| support_host_->RemoveObserver(this); |
| @@ -64,34 +57,36 @@ void ArcTermsOfServiceNegotiator::OnTermsAgreed( |
| preference_handler_->EnableLocationService(is_location_service_enabled); |
| preference_handler_.reset(); |
| - base::ResetAndReturn(&pending_callback_).Run(true); |
| + ReportResult(true); |
| } |
| -void ArcTermsOfServiceNegotiator::OnAuthSucceeded( |
| +void ArcTermsOfServiceDefaultNegotiator::OnAuthSucceeded( |
| const std::string& auth_code) { |
| NOTREACHED(); |
| } |
| -void ArcTermsOfServiceNegotiator::OnRetryClicked() { |
| +void ArcTermsOfServiceDefaultNegotiator::OnRetryClicked() { |
| support_host_->ShowTermsOfService(); |
| } |
| -void ArcTermsOfServiceNegotiator::OnSendFeedbackClicked() { |
| +void ArcTermsOfServiceDefaultNegotiator::OnSendFeedbackClicked() { |
| NOTREACHED(); |
| } |
| -void ArcTermsOfServiceNegotiator::OnMetricsModeChanged(bool enabled, |
| - bool managed) { |
| +void ArcTermsOfServiceDefaultNegotiator::OnMetricsModeChanged(bool enabled, |
| + bool managed) { |
| support_host_->SetMetricsPreferenceCheckbox(enabled, managed); |
| } |
| -void ArcTermsOfServiceNegotiator::OnBackupAndRestoreModeChanged(bool enabled, |
| - bool managed) { |
| +void ArcTermsOfServiceDefaultNegotiator::OnBackupAndRestoreModeChanged( |
| + bool enabled, |
| + bool managed) { |
| support_host_->SetBackupAndRestorePreferenceCheckbox(enabled, managed); |
| } |
| -void ArcTermsOfServiceNegotiator::OnLocationServicesModeChanged(bool enabled, |
| - bool managed) { |
| +void ArcTermsOfServiceDefaultNegotiator::OnLocationServicesModeChanged( |
| + bool enabled, |
| + bool managed) { |
| support_host_->SetLocationServicesPreferenceCheckbox(enabled, managed); |
| } |