| Index: chrome/browser/ui/webui/options/browser_options_handler.cc
|
| diff --git a/chrome/browser/ui/webui/options/browser_options_handler.cc b/chrome/browser/ui/webui/options/browser_options_handler.cc
|
| index ee4aec58289f52dfc94cca6c51bf2795ea082d52..fa8429b51f7938ec4a7e1e3d2d5ed950ee2c9720 100644
|
| --- a/chrome/browser/ui/webui/options/browser_options_handler.cc
|
| +++ b/chrome/browser/ui/webui/options/browser_options_handler.cc
|
| @@ -101,6 +101,7 @@
|
| #include "ash/ash_switches.h"
|
| #include "ash/magnifier/magnifier_constants.h"
|
| #include "chrome/browser/chromeos/accessibility/accessibility_util.h"
|
| +#include "chrome/browser/chromeos/chromeos_utils.h"
|
| #include "chrome/browser/chromeos/extensions/wallpaper_manager_util.h"
|
| #include "chrome/browser/chromeos/login/user.h"
|
| #include "chrome/browser/chromeos/login/user_manager.h"
|
| @@ -232,6 +233,12 @@ void BrowserOptionsHandler::GetLocalizedValues(base::DictionaryValue* values) {
|
| IDS_OPTIONS_DOWNLOADLOCATION_CHANGE_BUTTON },
|
| { "downloadLocationGroupName", IDS_OPTIONS_DOWNLOADLOCATION_GROUP_NAME },
|
| { "enableLogging", IDS_OPTIONS_ENABLE_LOGGING },
|
| +#if !defined(OS_CHROMEOS)
|
| + { "easyUnlockCheckboxLabel", IDS_OPTIONS_EASY_UNLOCK_CHECKBOX_LABEL },
|
| +#endif
|
| + { "easyUnlockSectionTitle", IDS_OPTIONS_EASY_UNLOCK_SECTION_TITLE },
|
| + { "easyUnlockSetupButton", IDS_OPTIONS_EASY_UNLOCK_SETUP_BUTTON },
|
| + { "easyUnlockManagement", IDS_OPTIONS_EASY_UNLOCK_MANAGEMENT },
|
| { "fontSettingsCustomizeFontsButton",
|
| IDS_OPTIONS_FONTSETTINGS_CUSTOMIZE_FONTS_BUTTON },
|
| { "fontSizeLabelCustom", IDS_OPTIONS_FONT_SIZE_LABEL_CUSTOM },
|
| @@ -567,6 +574,19 @@ void BrowserOptionsHandler::GetLocalizedValues(base::DictionaryValue* values) {
|
|
|
| values->SetString("languagesLearnMoreURL",
|
| chrome::kLanguageSettingsLearnMoreUrl);
|
| +
|
| + values->SetBoolean(
|
| + "easyUnlockEnabled",
|
| + CommandLine::ForCurrentProcess()->HasSwitch(switches::kEnableEasyUnlock));
|
| + values->SetString("easyUnlockLearnMoreURL", chrome::kEasyUnlockLearnMoreUrl);
|
| + values->SetString("easyUnlockManagementURL",
|
| + chrome::kEasyUnlockManagementUrl);
|
| +#if defined(OS_CHROMEOS)
|
| + values->SetString("easyUnlockCheckboxLabel",
|
| + l10n_util::GetStringFUTF16(
|
| + IDS_OPTIONS_EASY_UNLOCK_CHECKBOX_LABEL_CHROMEOS,
|
| + chromeos::GetChromeDeviceType()));
|
| +#endif
|
| }
|
|
|
| #if defined(ENABLE_FULL_PRINTING)
|
| @@ -709,6 +729,11 @@ void BrowserOptionsHandler::RegisterMessages() {
|
| "requestHotwordSetupRetry",
|
| base::Bind(&BrowserOptionsHandler::HandleRequestHotwordSetupRetry,
|
| base::Unretained(this)));
|
| +
|
| + web_ui()->RegisterMessageCallback(
|
| + "launchEasyUnlockSetup",
|
| + base::Bind(&BrowserOptionsHandler::HandleLaunchEasyUnlockSetup,
|
| + base::Unretained(this)));
|
| }
|
|
|
| void BrowserOptionsHandler::Uninitialize() {
|
| @@ -803,6 +828,10 @@ void BrowserOptionsHandler::InitializeHandler() {
|
| prefs::kSigninAllowed,
|
| base::Bind(&BrowserOptionsHandler::OnSigninAllowedPrefChange,
|
| base::Unretained(this)));
|
| + profile_pref_registrar_.Add(
|
| + prefs::kEasyUnlockPairing,
|
| + base::Bind(&BrowserOptionsHandler::SetupEasyUnlock,
|
| + base::Unretained(this)));
|
|
|
| #if defined(OS_CHROMEOS)
|
| if (!policy_registrar_) {
|
| @@ -843,6 +872,7 @@ void BrowserOptionsHandler::InitializePage() {
|
| SetupProxySettingsSection();
|
| SetupManageCertificatesSection();
|
| SetupManagingSupervisedUsers();
|
| + SetupEasyUnlock();
|
|
|
| #if defined(ENABLE_FULL_PRINTING) && !defined(OS_CHROMEOS)
|
| if (!cloud_print_mdns_ui_enabled_) {
|
| @@ -1579,6 +1609,11 @@ void BrowserOptionsHandler::HandleRequestHotwordAvailable(
|
| }
|
| }
|
|
|
| +void BrowserOptionsHandler::HandleLaunchEasyUnlockSetup(
|
| + const base::ListValue* args) {
|
| + // TODO(tengs): launch Easy Unlock setup flow.
|
| +}
|
| +
|
| void BrowserOptionsHandler::HandleRequestHotwordSetupRetry(
|
| const base::ListValue* args) {
|
| // TODO(joshtrask): invoke BrowserOptions.showHotwordSection again, passing
|
| @@ -1764,4 +1799,13 @@ void BrowserOptionsHandler::SetupManagingSupervisedUsers() {
|
| has_users_value);
|
| }
|
|
|
| +void BrowserOptionsHandler::SetupEasyUnlock() {
|
| + bool has_pairing = !Profile::FromWebUI(web_ui())->GetPrefs()
|
| + ->GetDictionary(prefs::kEasyUnlockPairing)->empty();
|
| + base::FundamentalValue has_pairing_value(has_pairing);
|
| + web_ui()->CallJavascriptFunction(
|
| + "BrowserOptions.updateEasyUnlock",
|
| + has_pairing_value);
|
| +}
|
| +
|
| } // namespace options
|
|
|