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

Side by Side Diff: chrome/browser/extensions/api/developer_private/extension_info_generator.cc

Issue 1051273002: Update chrome://extensions for supervised users (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: new icons Created 5 years, 7 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 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/extensions/api/developer_private/extension_info_generat or.h" 5 #include "chrome/browser/extensions/api/developer_private/extension_info_generat or.h"
6 6
7 #include "base/base64.h" 7 #include "base/base64.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "chrome/browser/extensions/api/developer_private/inspectable_views_find er.h" 9 #include "chrome/browser/extensions/api/developer_private/inspectable_views_find er.h"
10 #include "chrome/browser/extensions/api/extension_action/extension_action_api.h" 10 #include "chrome/browser/extensions/api/extension_action/extension_action_api.h"
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
250 blacklist_text = IDS_OPTIONS_BLACKLISTED_POTENTIALLY_UNWANTED; 250 blacklist_text = IDS_OPTIONS_BLACKLISTED_POTENTIALLY_UNWANTED;
251 break; 251 break;
252 default: 252 default:
253 break; 253 break;
254 } 254 }
255 if (blacklist_text != -1) { 255 if (blacklist_text != -1) {
256 info->blacklist_text.reset( 256 info->blacklist_text.reset(
257 new std::string(l10n_util::GetStringUTF8(blacklist_text))); 257 new std::string(l10n_util::GetStringUTF8(blacklist_text)));
258 } 258 }
259 259
260 Profile* profile = Profile::FromBrowserContext(browser_context_);
261
262 if (Manifest::IsPolicyLocation(extension.location())) {
263 info->controlled_by.reset(new std::string("policy"));
264 info->controlled_by_text.reset(new std::string(
265 l10n_util::GetStringUTF8(IDS_OPTIONS_INSTALL_LOCATION_ENTERPRISE)));
266 } else if (util::IsExtensionSupervised(&extension, profile)) {
267 if (profile->IsChild()) {
268 info->controlled_by.reset(new std::string("child-custodian"));
269 info->controlled_by_text.reset(new std::string(l10n_util::GetStringUTF8(
270 IDS_EXTENSIONS_INSTALLED_BY_CHILD_CUSTODIAN)));
271 } else {
272 info->controlled_by.reset(new std::string("supervised-user-custodian"));
273 info->controlled_by_text.reset(new std::string(l10n_util::GetStringUTF8(
274 IDS_EXTENSIONS_INSTALLED_BY_SUPERVISED_USER_CUSTODIAN)));
275 }
276 }
277
260 // Dependent extensions. 278 // Dependent extensions.
261 if (extension.is_shared_module()) { 279 if (extension.is_shared_module()) {
262 scoped_ptr<ExtensionSet> dependent_extensions = 280 scoped_ptr<ExtensionSet> dependent_extensions =
263 extension_system_->extension_service()-> 281 extension_system_->extension_service()->
264 shared_module_service()->GetDependentExtensions(&extension); 282 shared_module_service()->GetDependentExtensions(&extension);
265 for (const scoped_refptr<const Extension>& dependent : 283 for (const scoped_refptr<const Extension>& dependent :
266 *dependent_extensions) 284 *dependent_extensions)
267 info->dependent_extensions.push_back(dependent->id()); 285 info->dependent_extensions.push_back(dependent->id());
268 } 286 }
269 287
(...skipping 25 matching lines...) Expand all
295 info->home_page.url = ManifestURL::GetHomepageURL(&extension).spec(); 313 info->home_page.url = ManifestURL::GetHomepageURL(&extension).spec();
296 info->home_page.specified = ManifestURL::SpecifiedHomepageURL(&extension); 314 info->home_page.specified = ManifestURL::SpecifiedHomepageURL(&extension);
297 315
298 info->id = extension.id(); 316 info->id = extension.id();
299 317
300 // Incognito access. 318 // Incognito access.
301 info->incognito_access.is_enabled = extension.can_be_incognito_enabled(); 319 info->incognito_access.is_enabled = extension.can_be_incognito_enabled();
302 info->incognito_access.is_active = 320 info->incognito_access.is_active =
303 util::IsIncognitoEnabled(extension.id(), browser_context_); 321 util::IsIncognitoEnabled(extension.id(), browser_context_);
304 322
305 Profile* profile = Profile::FromBrowserContext(browser_context_);
306 info->installed_by_custodian =
307 util::IsExtensionSupervised(&extension, profile);
308
309 // Install warnings (only if unpacked and no error console). 323 // Install warnings (only if unpacked and no error console).
310 if (!error_console_enabled && 324 if (!error_console_enabled &&
311 Manifest::IsUnpackedLocation(extension.location())) { 325 Manifest::IsUnpackedLocation(extension.location())) {
312 const std::vector<InstallWarning>& install_warnings = 326 const std::vector<InstallWarning>& install_warnings =
313 extension.install_warnings(); 327 extension.install_warnings();
314 for (const InstallWarning& warning : install_warnings) 328 for (const InstallWarning& warning : install_warnings)
315 info->install_warnings.push_back(warning.message); 329 info->install_warnings.push_back(warning.message);
316 } 330 }
317 331
318 // Launch url. 332 // Launch url.
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
384 OptionsPageInfo::GetOptionsPage(&extension).spec(); 398 OptionsPageInfo::GetOptionsPage(&extension).spec();
385 } 399 }
386 400
387 // Path. 401 // Path.
388 if (Manifest::IsUnpackedLocation(extension.location())) { 402 if (Manifest::IsUnpackedLocation(extension.location())) {
389 info->path.reset(new std::string(extension.path().AsUTF8Unsafe())); 403 info->path.reset(new std::string(extension.path().AsUTF8Unsafe()));
390 info->prettified_path.reset(new std::string( 404 info->prettified_path.reset(new std::string(
391 extensions::path_util::PrettifyPath(extension.path()).AsUTF8Unsafe())); 405 extensions::path_util::PrettifyPath(extension.path()).AsUTF8Unsafe()));
392 } 406 }
393 407
394 if (Manifest::IsPolicyLocation(extension.location())) {
395 info->policy_text.reset(new std::string(
396 l10n_util::GetStringUTF8(IDS_OPTIONS_INSTALL_LOCATION_ENTERPRISE)));
397 }
398
399 // Runs on all urls. 408 // Runs on all urls.
400 info->run_on_all_urls.is_enabled = 409 info->run_on_all_urls.is_enabled =
401 (FeatureSwitch::scripts_require_action()->IsEnabled() && 410 (FeatureSwitch::scripts_require_action()->IsEnabled() &&
402 PermissionsData::ScriptsMayRequireActionForExtension( 411 PermissionsData::ScriptsMayRequireActionForExtension(
403 &extension, 412 &extension,
404 extension.permissions_data()->active_permissions().get())) || 413 extension.permissions_data()->active_permissions().get())) ||
405 extension.permissions_data()->HasWithheldImpliedAllHosts() || 414 extension.permissions_data()->HasWithheldImpliedAllHosts() ||
406 util::HasSetAllowedScriptingOnAllUrls(extension.id(), browser_context_); 415 util::HasSetAllowedScriptingOnAllUrls(extension.id(), browser_context_);
407 info->run_on_all_urls.is_active = 416 info->run_on_all_urls.is_active =
408 util::AllowedScriptingOnAllUrls(extension.id(), browser_context_); 417 util::AllowedScriptingOnAllUrls(extension.id(), browser_context_);
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
524 // that at the end of the method, any stored refs are destroyed. 533 // that at the end of the method, any stored refs are destroyed.
525 ExtensionInfoList list; 534 ExtensionInfoList list;
526 list.swap(list_); 535 list.swap(list_);
527 ExtensionInfosCallback callback = callback_; 536 ExtensionInfosCallback callback = callback_;
528 callback_.Reset(); 537 callback_.Reset();
529 callback.Run(list); // WARNING: |this| is possibly deleted after this line! 538 callback.Run(list); // WARNING: |this| is possibly deleted after this line!
530 } 539 }
531 } 540 }
532 541
533 } // namespace extensions 542 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698