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

Side by Side Diff: chrome/browser/supervised_user/supervised_user_service.cc

Issue 480513004: Stopping the history recording for a supervised user (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Made documentation clearer. Created 6 years, 2 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/supervised_user/supervised_user_service.h" 5 #include "chrome/browser/supervised_user/supervised_user_service.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/files/file_path.h" 8 #include "base/files/file_path.h"
9 #include "base/memory/ref_counted.h" 9 #include "base/memory/ref_counted.h"
10 #include "base/prefs/pref_service.h" 10 #include "base/prefs/pref_service.h"
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 ui_url_filter_->SetBlacklist(&blacklist_); 149 ui_url_filter_->SetBlacklist(&blacklist_);
150 BrowserThread::PostTask( 150 BrowserThread::PostTask(
151 BrowserThread::IO, 151 BrowserThread::IO,
152 FROM_HERE, 152 FROM_HERE,
153 base::Bind(&SupervisedUserURLFilter::SetBlacklist, 153 base::Bind(&SupervisedUserURLFilter::SetBlacklist,
154 io_url_filter_, 154 io_url_filter_,
155 &blacklist_)); 155 &blacklist_));
156 } 156 }
157 157
158 SupervisedUserService::SupervisedUserService(Profile* profile) 158 SupervisedUserService::SupervisedUserService(Profile* profile)
159 : profile_(profile), 159 : includes_sync_sessions_type_(true),
160 profile_(profile),
160 active_(false), 161 active_(false),
161 delegate_(NULL), 162 delegate_(NULL),
162 #if defined(ENABLE_EXTENSIONS) 163 #if defined(ENABLE_EXTENSIONS)
163 extension_registry_observer_(this), 164 extension_registry_observer_(this),
164 #endif 165 #endif
165 waiting_for_sync_initialization_(false), 166 waiting_for_sync_initialization_(false),
166 is_profile_active_(false), 167 is_profile_active_(false),
167 elevated_for_testing_(false), 168 elevated_for_testing_(false),
168 did_init_(false), 169 did_init_(false),
169 did_shutdown_(false), 170 did_shutdown_(false),
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after
393 UpdateSiteLists(); 394 UpdateSiteLists();
394 } 395 }
395 } 396 }
396 #endif // defined(ENABLE_EXTENSIONS) 397 #endif // defined(ENABLE_EXTENSIONS)
397 398
398 syncer::ModelTypeSet SupervisedUserService::GetPreferredDataTypes() const { 399 syncer::ModelTypeSet SupervisedUserService::GetPreferredDataTypes() const {
399 if (!ProfileIsSupervised()) 400 if (!ProfileIsSupervised())
400 return syncer::ModelTypeSet(); 401 return syncer::ModelTypeSet();
401 402
402 syncer::ModelTypeSet result; 403 syncer::ModelTypeSet result;
403 result.Put(syncer::SESSIONS); 404 if (IncludesSyncSessionsType())
405 result.Put(syncer::SESSIONS);
404 result.Put(syncer::EXTENSIONS); 406 result.Put(syncer::EXTENSIONS);
405 result.Put(syncer::EXTENSION_SETTINGS); 407 result.Put(syncer::EXTENSION_SETTINGS);
406 result.Put(syncer::APPS); 408 result.Put(syncer::APPS);
407 result.Put(syncer::APP_SETTINGS); 409 result.Put(syncer::APP_SETTINGS);
408 result.Put(syncer::APP_NOTIFICATIONS); 410 result.Put(syncer::APP_NOTIFICATIONS);
409 result.Put(syncer::APP_LIST); 411 result.Put(syncer::APP_LIST);
410 return result; 412 return result;
411 } 413 }
412 414
415 void SupervisedUserService::OnHistoryRecordingStateChanged() {
416 includes_sync_sessions_type_ =
417 profile_->GetPrefs()->GetBoolean(prefs::kRecordHistory);
418 ProfileSyncServiceFactory::GetForProfile(profile_)
419 ->ReconfigureDatatypeManager();
420 }
421
422 bool SupervisedUserService::IncludesSyncSessionsType() const {
423 return includes_sync_sessions_type_;
424 }
425
413 void SupervisedUserService::OnStateChanged() { 426 void SupervisedUserService::OnStateChanged() {
414 ProfileSyncService* service = 427 ProfileSyncService* service =
415 ProfileSyncServiceFactory::GetForProfile(profile_); 428 ProfileSyncServiceFactory::GetForProfile(profile_);
416 if (waiting_for_sync_initialization_ && service->sync_initialized() && 429 if (waiting_for_sync_initialization_ && service->sync_initialized() &&
417 service->backend_mode() == ProfileSyncService::SYNC) { 430 service->backend_mode() == ProfileSyncService::SYNC) {
418 waiting_for_sync_initialization_ = false; 431 waiting_for_sync_initialization_ = false;
419 service->RemoveObserver(this); 432 service->RemoveObserver(this);
420 FinishSetupSync(); 433 FinishSetupSync();
421 return; 434 return;
422 } 435 }
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after
673 void SupervisedUserService::Init() { 686 void SupervisedUserService::Init() {
674 DCHECK(!did_init_); 687 DCHECK(!did_init_);
675 did_init_ = true; 688 did_init_ = true;
676 DCHECK(GetSettingsService()->IsReady()); 689 DCHECK(GetSettingsService()->IsReady());
677 690
678 pref_change_registrar_.Init(profile_->GetPrefs()); 691 pref_change_registrar_.Init(profile_->GetPrefs());
679 pref_change_registrar_.Add( 692 pref_change_registrar_.Add(
680 prefs::kSupervisedUserId, 693 prefs::kSupervisedUserId,
681 base::Bind(&SupervisedUserService::OnSupervisedUserIdChanged, 694 base::Bind(&SupervisedUserService::OnSupervisedUserIdChanged,
682 base::Unretained(this))); 695 base::Unretained(this)));
696 pref_change_registrar_.Add(
697 prefs::kRecordHistory,
698 base::Bind(&SupervisedUserService::OnHistoryRecordingStateChanged,
699 base::Unretained(this)));
683 700
684 ProfileSyncService* sync_service = 701 ProfileSyncService* sync_service =
685 ProfileSyncServiceFactory::GetForProfile(profile_); 702 ProfileSyncServiceFactory::GetForProfile(profile_);
686 // Can be null in tests. 703 // Can be null in tests.
687 if (sync_service) 704 if (sync_service)
688 sync_service->AddPreferenceProvider(this); 705 sync_service->AddPreferenceProvider(this);
689 706
690 SetActive(ProfileIsSupervised()); 707 SetActive(ProfileIsSupervised());
691 } 708 }
692 709
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after
930 // The active user can be NULL in unit tests. 947 // The active user can be NULL in unit tests.
931 if (user_manager::UserManager::Get()->GetActiveUser()) { 948 if (user_manager::UserManager::Get()->GetActiveUser()) {
932 return UTF16ToUTF8(user_manager::UserManager::Get()->GetUserDisplayName( 949 return UTF16ToUTF8(user_manager::UserManager::Get()->GetUserDisplayName(
933 user_manager::UserManager::Get()->GetActiveUser()->GetUserID())); 950 user_manager::UserManager::Get()->GetActiveUser()->GetUserID()));
934 } 951 }
935 return std::string(); 952 return std::string();
936 #else 953 #else
937 return profile_->GetPrefs()->GetString(prefs::kProfileName); 954 return profile_->GetPrefs()->GetString(prefs::kProfileName);
938 #endif 955 #endif
939 } 956 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698