Home | History | Annotate | Download | only in signin
      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
      3 // found in the LICENSE file.
      4 
      5 #include "chrome/browser/signin/easy_unlock.h"
      6 
      7 #include "base/values.h"
      8 #include "chrome/browser/extensions/extension_service.h"
      9 #include "chrome/browser/profiles/profile.h"
     10 #include "chrome/browser/ui/extensions/application_launch.h"
     11 #include "chrome/common/pref_names.h"
     12 #include "components/pref_registry/pref_registry_syncable.h"
     13 #include "extensions/browser/extension_system.h"
     14 
     15 namespace easy_unlock {
     16 
     17 void RegisterProfilePrefs(
     18     user_prefs::PrefRegistrySyncable* registry) {
     19   registry->RegisterBooleanPref(
     20       prefs::kEasyUnlockEnabled,
     21       false,
     22       user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
     23   registry->RegisterBooleanPref(
     24       prefs::kEasyUnlockShowTutorial,
     25       false,
     26       user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
     27   registry->RegisterDictionaryPref(
     28       prefs::kEasyUnlockPairing,
     29       new base::DictionaryValue(),
     30       user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
     31 }
     32 
     33 void LaunchEasyUnlockSetup(Profile* profile) {
     34   ExtensionService* service =
     35       extensions::ExtensionSystem::Get(profile)->extension_service();
     36   const extensions::Extension* extension =
     37       service->GetExtensionById(extension_misc::kEasyUnlockAppId, false);
     38 
     39   OpenApplication(AppLaunchParams(
     40       profile, extension, extensions::LAUNCH_CONTAINER_WINDOW, NEW_WINDOW));
     41 }
     42 
     43 }  // namespace easy_unlock
     44