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

Unified Diff: chrome/browser/resources/user_chooser/user_chooser.js

Issue 16104008: First try at a user management screen for the desktop (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix linux CrOS browser test Created 7 years, 5 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/resources/user_chooser/user_chooser.js
diff --git a/chrome/browser/resources/user_chooser/user_chooser.js b/chrome/browser/resources/user_chooser/user_chooser.js
new file mode 100644
index 0000000000000000000000000000000000000000..a83719a583dd9367a5c0884fb9665b20823250ba
--- /dev/null
+++ b/chrome/browser/resources/user_chooser/user_chooser.js
@@ -0,0 +1,119 @@
+// Copyright (c) 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+<include src="../chromeos/login/screen.js"></include>
+<include src="../chromeos/login/bubble.js"></include>
+<include src="../chromeos/login/display_manager.js"></include>
+<include src="control_bar.js"></include>
+<include src="../chromeos/login/screen_account_picker.js"></include>
+<include src="../chromeos/login/user_pod_row.js"></include>
+<include src="../chromeos/login/resource_loader.js"></include>
+
+cr.define('cr.ui', function() {
+ var DisplayManager = cr.ui.login.DisplayManager;
+
+ /**
+ * Constructs an Out of box controller. It manages initialization of screens,
+ * transitions, error messages display.
+ * @extends {DisplayManager}
+ * @constructor
+ */
+ function Oobe() {
+ }
+
+ cr.addSingletonGetter(Oobe);
+
+ Oobe.prototype = {
+ __proto__: DisplayManager.prototype,
+ };
+
+ /**
+ * Shows the given screen.
+ * @param {Object} screen Screen params dict, e.g. {id: screenId, data: data}
+ */
+ Oobe.showUserChooserScreen = function() {
+ Oobe.getInstance().showScreen({id: 'account-picker',
+ data: {disableAddUser: false}});
+ // The ChromeOS account-picker will hide the AddUser button if a user is
+ // logged in and the screen is "locked", so we must re-enabled it
+ $('add-user-header-bar-item').hidden = false;
+ };
+
+ /**
+ * Shows signin UI.
+ * @param {string} opt_email An optional email for signin UI.
+ */
+ Oobe.launchUser = function(email, displayName) {
+ chrome.send('launchUser', [email, displayName]);
+ };
+
+ /**
+ * Disables signin UI.
+ */
+ Oobe.disableSigninUI = function() {
+ DisplayManager.disableSigninUI();
+ };
+
+ /**
+ * Shows signin UI.
+ * @param {string} opt_email An optional email for signin UI.
+ */
+ Oobe.showSigninUI = function(opt_email) {
+ DisplayManager.showSigninUI(opt_email);
+ };
+
+ /**
+ * Clears error bubble as well as optional menus that could be open.
+ */
+ Oobe.clearErrors = function() {
+ DisplayManager.clearErrors();
+ };
+
+ /**
+ * Clears password field in user-pod.
+ */
+ Oobe.clearUserPodPassword = function() {
+ DisplayManager.clearUserPodPassword();
+ };
+
+ /**
+ * Restores input focus to currently selected pod.
+ */
+ Oobe.refocusCurrentPod = function() {
+ DisplayManager.refocusCurrentPod();
+ };
+
+ // Export
+ return {
+ Oobe: Oobe
+ };
+});
+
+cr.define('UserChooser', function() {
+ 'use strict';
+
+ function initialize() {
+ login.AccountPickerScreen.register();
+ cr.ui.Bubble.decorate($('bubble'));
+ login.HeaderBar.decorate($('login-header-bar'));
+ chrome.send('userChooserInitialize');
+ }
+
+ // Return an object with all of the exports.
+ return {
+ initialize: initialize
+ };
+});
+
+var Oobe = cr.ui.Oobe;
+
+// Allow selection events on components with editable text (password field)
+// bug (http://code.google.com/p/chromium/issues/detail?id=125863)
+disableTextSelectAndDrag(function(e) {
+ var src = e.target;
+ return src instanceof HTMLTextAreaElement ||
+ src instanceof HTMLInputElement &&
+ /text|password|search/.test(src.type);
+});
+
+document.addEventListener('DOMContentLoaded', UserChooser.initialize);
« no previous file with comments | « chrome/browser/resources/user_chooser/user_chooser.html ('k') | chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698