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

Side by Side Diff: chrome/browser/chromeos/arc/arc_auth_service.cc

Issue 1829703002: Add ArcEnabled policy implementation (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Merged with https://codereview.chromium.org/1852843003/ Created 4 years, 8 months 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 unified diff | Download patch
« no previous file with comments | « chrome/browser/chromeos/arc/arc_auth_service.h ('k') | chrome/browser/policy/DEPS » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/chromeos/arc/arc_auth_service.h" 5 #include "chrome/browser/chromeos/arc/arc_auth_service.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/strings/stringprintf.h" 10 #include "base/strings/stringprintf.h"
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
217 // Reuse storage used in ARC OptIn platform app. 217 // Reuse storage used in ARC OptIn platform app.
218 const std::string site_url = 218 const std::string site_url =
219 base::StringPrintf("%s://%s/persist?%s", content::kGuestScheme, 219 base::StringPrintf("%s://%s/persist?%s", content::kGuestScheme,
220 kArcSupportExtensionId, kArcSupportStorageId); 220 kArcSupportExtensionId, kArcSupportStorageId);
221 storage_partition_ = content::BrowserContext::GetStoragePartitionForSite( 221 storage_partition_ = content::BrowserContext::GetStoragePartitionForSite(
222 profile_, GURL(site_url)); 222 profile_, GURL(site_url));
223 CHECK(storage_partition_); 223 CHECK(storage_partition_);
224 224
225 // In case UI is disabled we assume that ARC is opted-in. 225 // In case UI is disabled we assume that ARC is opted-in.
226 if (!IsOptInVerificationDisabled()) { 226 if (!IsOptInVerificationDisabled()) {
227 pref_change_registrar_.Init(profile_->GetPrefs());
228 pref_change_registrar_.Add(
229 prefs::kArcEnabled,
230 base::Bind(&ArcAuthService::OnOptInPreferenceChanged,
bartfab (slow) 2016/04/04 11:57:03 Nit: #include "base/bind.h"
Polina Bondarenko 2016/04/04 12:03:21 Done.
231 base::Unretained(this)));
bartfab (slow) 2016/04/04 11:57:03 Nit: #include "base/bind_helpers.h"
Polina Bondarenko 2016/04/04 12:03:21 Done.
227 if (profile_->GetPrefs()->GetBoolean(prefs::kArcEnabled)) { 232 if (profile_->GetPrefs()->GetBoolean(prefs::kArcEnabled)) {
228 OnOptInPreferenceChanged(); 233 OnOptInPreferenceChanged();
229 } else { 234 } else {
230 UpdateEnabledStateUMA(false); 235 UpdateEnabledStateUMA(false);
231 if (!disable_ui_for_testing && profile_->IsNewProfile()) { 236 if (!disable_ui_for_testing && profile_->IsNewProfile()) {
232 PrefServiceSyncableFromProfile(profile_)->AddObserver(this); 237 PrefServiceSyncableFromProfile(profile_)->AddObserver(this);
233 OnIsSyncingChanged(); 238 OnIsSyncingChanged();
234 } 239 }
235 } 240 }
236 } else { 241 } else {
(...skipping 14 matching lines...) Expand all
251 } 256 }
252 257
253 void ArcAuthService::Shutdown() { 258 void ArcAuthService::Shutdown() {
254 ShutdownBridgeAndCloseUI(); 259 ShutdownBridgeAndCloseUI();
255 if (profile_) { 260 if (profile_) {
256 syncable_prefs::PrefServiceSyncable* pref_service_syncable = 261 syncable_prefs::PrefServiceSyncable* pref_service_syncable =
257 PrefServiceSyncableFromProfile(profile_); 262 PrefServiceSyncableFromProfile(profile_);
258 pref_service_syncable->RemoveObserver(this); 263 pref_service_syncable->RemoveObserver(this);
259 pref_service_syncable->RemoveSyncedPrefObserver(prefs::kArcEnabled, this); 264 pref_service_syncable->RemoveSyncedPrefObserver(prefs::kArcEnabled, this);
260 } 265 }
266 pref_change_registrar_.RemoveAll();
261 profile_ = nullptr; 267 profile_ = nullptr;
262 } 268 }
263 269
264 void ArcAuthService::ShowUI(UIPage page, const base::string16& status) { 270 void ArcAuthService::ShowUI(UIPage page, const base::string16& status) {
265 if (disable_ui_for_testing || IsOptInVerificationDisabled()) 271 if (disable_ui_for_testing || IsOptInVerificationDisabled())
266 return; 272 return;
267 273
268 SetUIPage(page, status); 274 SetUIPage(page, status);
269 const extensions::AppWindowRegistry* const app_window_registry = 275 const extensions::AppWindowRegistry* const app_window_registry =
270 extensions::AppWindowRegistry::Get(profile_); 276 extensions::AppWindowRegistry::Get(profile_);
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
314 void ArcAuthService::OnSyncedPrefChanged(const std::string& path, 320 void ArcAuthService::OnSyncedPrefChanged(const std::string& path,
315 bool from_sync) { 321 bool from_sync) {
316 DCHECK(thread_checker_.CalledOnValidThread()); 322 DCHECK(thread_checker_.CalledOnValidThread());
317 323
318 // Update UMA only for local changes 324 // Update UMA only for local changes
319 if (!from_sync) { 325 if (!from_sync) {
320 UpdateOptInActionUMA(profile_->GetPrefs()->GetBoolean(prefs::kArcEnabled) 326 UpdateOptInActionUMA(profile_->GetPrefs()->GetBoolean(prefs::kArcEnabled)
321 ? OptInActionType::OPTED_IN 327 ? OptInActionType::OPTED_IN
322 : OptInActionType::OPTED_OUT); 328 : OptInActionType::OPTED_OUT);
323 } 329 }
324
325 OnOptInPreferenceChanged();
326 } 330 }
327 331
328 void ArcAuthService::OnOptInPreferenceChanged() { 332 void ArcAuthService::OnOptInPreferenceChanged() {
329 DCHECK(thread_checker_.CalledOnValidThread()); 333 DCHECK(thread_checker_.CalledOnValidThread());
330 DCHECK(profile_); 334 DCHECK(profile_);
331 335
332 if (profile_->GetPrefs()->GetBoolean(prefs::kArcEnabled)) { 336 if (profile_->GetPrefs()->GetBoolean(prefs::kArcEnabled)) {
333 if (state_ != State::ACTIVE) { 337 if (state_ != State::ACTIVE) {
334 CloseUI(); 338 CloseUI();
335 auth_code_.clear(); 339 auth_code_.clear();
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
526 return os << kStateFetchingCode; 530 return os << kStateFetchingCode;
527 case ArcAuthService::State::ACTIVE: 531 case ArcAuthService::State::ACTIVE:
528 return os << kStateActive; 532 return os << kStateActive;
529 default: 533 default:
530 NOTREACHED(); 534 NOTREACHED();
531 return os; 535 return os;
532 } 536 }
533 } 537 }
534 538
535 } // namespace arc 539 } // namespace arc
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/arc/arc_auth_service.h ('k') | chrome/browser/policy/DEPS » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698