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

Unified Diff: chrome/browser/ui/webui/chromeos/login/kiosk_app_menu_handler.cc

Issue 158833003: Represent kiosk apps as user pods instead of menu items. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: launch button, added kiosk error bubble Created 6 years, 10 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 side-by-side diff with in-line comments
Download patch
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() {

Powered by Google App Engine
This is Rietveld 408576698