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

Side by Side Diff: chrome/browser/extensions/external_provider_impl.cc

Issue 1301323005: Implement kiosk multiple apps feature. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix nits. Created 5 years, 3 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/external_provider_impl.h" 5 #include "chrome/browser/extensions/external_provider_impl.h"
6 6
7 #include <set> 7 #include <set>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 473 matching lines...) Expand 10 before | Expand all | Expand 10 after
484 crx_location, 484 crx_location,
485 Manifest::EXTERNAL_POLICY_DOWNLOAD, 485 Manifest::EXTERNAL_POLICY_DOWNLOAD,
486 Extension::NO_FLAGS))); 486 Extension::NO_FLAGS)));
487 } 487 }
488 488
489 // Load the KioskAppExternalProvider when running in kiosk mode. 489 // Load the KioskAppExternalProvider when running in kiosk mode.
490 if (chrome::IsRunningInForcedAppMode()) { 490 if (chrome::IsRunningInForcedAppMode()) {
491 #if defined(OS_CHROMEOS) 491 #if defined(OS_CHROMEOS)
492 chromeos::KioskAppManager* kiosk_app_manager = 492 chromeos::KioskAppManager* kiosk_app_manager =
493 chromeos::KioskAppManager::Get(); 493 chromeos::KioskAppManager::Get();
494 DCHECK(kiosk_app_manager); 494 CHECK(kiosk_app_manager);
495 if (kiosk_app_manager && !kiosk_app_manager->external_loader_created()) { 495
496 // Kiosk primary app external provider.
497 if (!kiosk_app_manager->external_loader_created()) {
496 scoped_ptr<ExternalProviderImpl> kiosk_app_provider( 498 scoped_ptr<ExternalProviderImpl> kiosk_app_provider(
497 new ExternalProviderImpl( 499 new ExternalProviderImpl(
498 service, kiosk_app_manager->CreateExternalLoader(), profile, 500 service, kiosk_app_manager->CreateExternalLoader(), profile,
499 Manifest::EXTERNAL_PREF, Manifest::INVALID_LOCATION, 501 Manifest::EXTERNAL_PREF, Manifest::INVALID_LOCATION,
500 Extension::NO_FLAGS)); 502 Extension::NO_FLAGS));
501 kiosk_app_provider->set_auto_acknowledge(true); 503 kiosk_app_provider->set_auto_acknowledge(true);
502 kiosk_app_provider->set_install_immediately(true); 504 kiosk_app_provider->set_install_immediately(true);
503 provider_list->push_back( 505 provider_list->push_back(
504 linked_ptr<ExternalProviderInterface>(kiosk_app_provider.release())); 506 linked_ptr<ExternalProviderInterface>(kiosk_app_provider.release()));
505 } 507 }
508
509 // Kiosk secondary app external provider.
510 if (!kiosk_app_manager->secondary_app_external_loader_created()) {
511 scoped_ptr<ExternalProviderImpl> secondary_kiosk_app_provider(
512 new ExternalProviderImpl(
513 service, kiosk_app_manager->CreateSecondaryAppExternalLoader(),
514 profile, Manifest::EXTERNAL_PREF,
515 Manifest::EXTERNAL_PREF_DOWNLOAD, Extension::NO_FLAGS));
516 secondary_kiosk_app_provider->set_auto_acknowledge(true);
517 secondary_kiosk_app_provider->set_install_immediately(true);
518 provider_list->push_back(linked_ptr<ExternalProviderInterface>(
519 secondary_kiosk_app_provider.release()));
520 }
506 #endif 521 #endif
507 return; 522 return;
508 } 523 }
509 524
510 // Extensions provided by recommended policies. 525 // Extensions provided by recommended policies.
511 if (external_recommended_loader.get()) { 526 if (external_recommended_loader.get()) {
512 provider_list->push_back(linked_ptr<ExternalProviderInterface>( 527 provider_list->push_back(linked_ptr<ExternalProviderInterface>(
513 new ExternalProviderImpl(service, 528 new ExternalProviderImpl(service,
514 external_recommended_loader, 529 external_recommended_loader,
515 profile, 530 profile,
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
664 new ExternalProviderImpl( 679 new ExternalProviderImpl(
665 service, 680 service,
666 new ExternalComponentLoader(profile), 681 new ExternalComponentLoader(profile),
667 profile, 682 profile,
668 Manifest::INVALID_LOCATION, 683 Manifest::INVALID_LOCATION,
669 Manifest::EXTERNAL_COMPONENT, 684 Manifest::EXTERNAL_COMPONENT,
670 Extension::FROM_WEBSTORE | Extension::WAS_INSTALLED_BY_DEFAULT))); 685 Extension::FROM_WEBSTORE | Extension::WAS_INSTALLED_BY_DEFAULT)));
671 } 686 }
672 687
673 } // namespace extensions 688 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698