| Index: chrome/browser/ui/webui/chromeos/login/kiosk_app_menu_handler.cc
|
| diff --git a/chrome/browser/ui/webui/chromeos/login/kiosk_app_menu_handler.cc b/chrome/browser/ui/webui/chromeos/login/kiosk_app_menu_handler.cc
|
| index 91bf0a384e025c5a3c0a2393fbc4ddf3ebffc084..3de08528f0fe6d482408985f084a50451dad66d6 100644
|
| --- a/chrome/browser/ui/webui/chromeos/login/kiosk_app_menu_handler.cc
|
| +++ b/chrome/browser/ui/webui/chromeos/login/kiosk_app_menu_handler.cc
|
| @@ -23,6 +23,16 @@
|
|
|
| namespace chromeos {
|
|
|
| +namespace {
|
| +
|
| +// JS functions that define new and old kiosk UI API.
|
| +const char kKioskSetAppsNewAPI[] = "login.AccountPickerScreen.setApps";
|
| +const char kKioskSetAppsOldAPI[] = "login.AppsMenuButton.setApps";
|
| +const char kKioskShowErrorNewAPI[] = "login.AccountPickerScreen.showAppError";
|
| +const char kKioskShowErrorOldAPI[] = "login.AppsMenuButton.showError";
|
| +
|
| +} // namespace
|
| +
|
| KioskAppMenuHandler::KioskAppMenuHandler()
|
| : initialized_(false),
|
| weak_ptr_factory_(this) {
|
| @@ -73,6 +83,7 @@ void KioskAppMenuHandler::SendKioskApps() {
|
| const KioskAppManager::App& app_data = apps[i];
|
|
|
| scoped_ptr<base::DictionaryValue> app_info(new base::DictionaryValue);
|
| + app_info->SetBoolean("isApp", true);
|
| app_info->SetString("id", app_data.app_id);
|
| app_info->SetString("label", app_data.name);
|
|
|
| @@ -85,8 +96,11 @@ void KioskAppMenuHandler::SendKioskApps() {
|
| apps_list.Append(app_info.release());
|
| }
|
|
|
| - web_ui()->CallJavascriptFunction("login.AppsMenuButton.setApps",
|
| - apps_list);
|
| + bool new_kiosk_ui = !CommandLine::ForCurrentProcess()->
|
| + HasSwitch(switches::kDisableNewKioskUI);
|
| + web_ui()->CallJavascriptFunction(new_kiosk_ui ?
|
| + kKioskSetAppsNewAPI : kKioskSetAppsOldAPI,
|
| + apps_list);
|
| }
|
|
|
| void KioskAppMenuHandler::HandleInitializeKioskApps(
|
| @@ -128,8 +142,11 @@ void KioskAppMenuHandler::HandleCheckKioskAppLaunchError(
|
| KioskAppLaunchError::Clear();
|
|
|
| const std::string error_message = KioskAppLaunchError::GetErrorMessage(error);
|
| - web_ui()->CallJavascriptFunction("login.AppsMenuButton.showError",
|
| - base::StringValue(error_message));
|
| + bool new_kiosk_ui = !CommandLine::ForCurrentProcess()->
|
| + HasSwitch(switches::kDisableNewKioskUI);
|
| + web_ui()->CallJavascriptFunction(new_kiosk_ui ?
|
| + kKioskShowErrorNewAPI : kKioskShowErrorOldAPI,
|
| + base::StringValue(error_message));
|
| }
|
|
|
| void KioskAppMenuHandler::OnKioskAppsSettingsChanged() {
|
|
|