OLD | NEW |
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/memory/ref_counted.h" | 8 #include "base/memory/ref_counted.h" |
9 #include "base/prefs/pref_service.h" | 9 #include "base/prefs/pref_service.h" |
10 #include "base/strings/string_number_conversions.h" | 10 #include "base/strings/string_number_conversions.h" |
(...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
291 // all existing extensions. | 291 // all existing extensions. |
292 ExtensionService* extension_service = | 292 ExtensionService* extension_service = |
293 extensions::ExtensionSystem::Get(profile_)->extension_service(); | 293 extensions::ExtensionSystem::Get(profile_)->extension_service(); |
294 | 294 |
295 // |extension_service| can be NULL in a unit test. | 295 // |extension_service| can be NULL in a unit test. |
296 if (extension_service && | 296 if (extension_service && |
297 extension_service->GetInstalledExtension(extension->id())) | 297 extension_service->GetInstalledExtension(extension->id())) |
298 return true; | 298 return true; |
299 | 299 |
300 bool was_installed_by_default = extension->was_installed_by_default(); | 300 bool was_installed_by_default = extension->was_installed_by_default(); |
| 301 bool was_installed_by_custodian = extension->was_installed_by_custodian(); |
301 #if defined(OS_CHROMEOS) | 302 #if defined(OS_CHROMEOS) |
302 // On Chrome OS all external sources are controlled by us so it means that | 303 // On Chrome OS all external sources are controlled by us so it means that |
303 // they are "default". Method was_installed_by_default returns false because | 304 // they are "default". Method was_installed_by_default returns false because |
304 // extensions creation flags are ignored in case of default extensions with | 305 // extensions creation flags are ignored in case of default extensions with |
305 // update URL(the flags aren't passed to OnExternalExtensionUpdateUrlFound). | 306 // update URL(the flags aren't passed to OnExternalExtensionUpdateUrlFound). |
306 // TODO(dpolukhin): remove this Chrome OS specific code as soon as creation | 307 // TODO(dpolukhin): remove this Chrome OS specific code as soon as creation |
307 // flags are not ignored. | 308 // flags are not ignored. |
308 was_installed_by_default = | 309 was_installed_by_default = |
309 extensions::Manifest::IsExternalLocation(extension->location()); | 310 extensions::Manifest::IsExternalLocation(extension->location()); |
310 #endif | 311 #endif |
311 if (extension->location() == extensions::Manifest::COMPONENT || | 312 if (extension->location() == extensions::Manifest::COMPONENT || |
312 was_installed_by_default) { | 313 was_installed_by_default || |
| 314 was_installed_by_custodian) { |
313 return true; | 315 return true; |
314 } | 316 } |
315 | 317 |
316 if (error) | 318 if (error) |
317 *error = tmp_error; | 319 *error = tmp_error; |
318 return false; | 320 return false; |
319 } | 321 } |
320 | 322 |
321 bool SupervisedUserService::UserMayModifySettings( | 323 bool SupervisedUserService::UserMayModifySettings( |
322 const extensions::Extension* extension, | 324 const extensions::Extension* extension, |
(...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
741 | 743 |
742 void SupervisedUserService::OnBrowserSetLastActive(Browser* browser) { | 744 void SupervisedUserService::OnBrowserSetLastActive(Browser* browser) { |
743 bool profile_became_active = profile_->IsSameProfile(browser->profile()); | 745 bool profile_became_active = profile_->IsSameProfile(browser->profile()); |
744 if (!is_profile_active_ && profile_became_active) | 746 if (!is_profile_active_ && profile_became_active) |
745 content::RecordAction(UserMetricsAction("ManagedUsers_OpenProfile")); | 747 content::RecordAction(UserMetricsAction("ManagedUsers_OpenProfile")); |
746 else if (is_profile_active_ && !profile_became_active) | 748 else if (is_profile_active_ && !profile_became_active) |
747 content::RecordAction(UserMetricsAction("ManagedUsers_SwitchProfile")); | 749 content::RecordAction(UserMetricsAction("ManagedUsers_SwitchProfile")); |
748 | 750 |
749 is_profile_active_ = profile_became_active; | 751 is_profile_active_ = profile_became_active; |
750 } | 752 } |
OLD | NEW |