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

Side by Side Diff: chrome/browser/resources/user_manager/user_manager.js

Issue 1722843002: MD user manager (html/js/css for create profile flow) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed comments #6 Created 4 years, 9 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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 <include src="../../../../ui/login/screen.js"> 4 <include src="../../../../ui/login/screen.js">
5 <include src="../../../../ui/login/bubble.js"> 5 <include src="../../../../ui/login/bubble.js">
6 <include src="../../../../ui/login/login_ui_tools.js"> 6 <include src="../../../../ui/login/login_ui_tools.js">
7 <include src="../../../../ui/login/display_manager.js"> 7 <include src="../../../../ui/login/display_manager.js">
8 <include src="control_bar.js"> 8 <include src="control_bar.js">
9 <include src="../../../../ui/login/account_picker/screen_account_picker.js"> 9 <include src="../../../../ui/login/account_picker/screen_account_picker.js">
10 <include src="../../../../ui/login/account_picker/user_pod_row.js"> 10 <include src="../../../../ui/login/account_picker/user_pod_row.js">
11 <include src="../../../../ui/login/resource_loader.js"> 11 <include src="../../../../ui/login/resource_loader.js">
12 <include src="user_manager_tutorial.js"> 12 <include src="user_manager_tutorial.js">
13 13
14 cr.define('cr.ui', function() { 14 cr.define('cr.ui', function() {
15 var DisplayManager = cr.ui.login.DisplayManager; 15 var DisplayManager = cr.ui.login.DisplayManager;
16 var UserManagerTutorial = cr.ui.login.UserManagerTutorial; 16 var UserManagerTutorial = cr.ui.login.UserManagerTutorial;
17 17
18 /** 18 /**
19 * Constructs an Out of box controller. It manages initialization of screens, 19 * Constructs an Out of box controller. It manages initialization of screens,
20 * transitions, error messages display. 20 * transitions, error messages display.
21 * @extends {DisplayManager} 21 * @extends {DisplayManager}
22 * @constructor 22 * @constructor
23 */ 23 */
24 function Oobe() { 24 function UserManager() {
25 } 25 }
26 26
27 cr.addSingletonGetter(Oobe); 27 cr.addSingletonGetter(UserManager);
28 28
29 Oobe.prototype = { 29 UserManager.prototype = {
30 __proto__: DisplayManager.prototype, 30 __proto__: DisplayManager.prototype,
31 }; 31 };
32 32
33 /** 33 /**
34 * Shows the given screen. 34 * Shows the given screen.
35 * @param {bool} showGuest Whether the 'Browse as Guest' button is displayed. 35 * @param {bool} showGuest Whether the 'Browse as Guest' button is displayed.
36 * @param {bool} showAddPerson Whether the 'Add Person' button is displayed. 36 * @param {bool} showAddPerson Whether the 'Add Person' button is displayed.
37 */ 37 */
38 Oobe.showUserManagerScreen = function(showGuest, showAddPerson) { 38 UserManager.showUserManagerScreen = function(showGuest, showAddPerson) {
39 Oobe.getInstance().showScreen({id: 'account-picker', 39 UserManager.getInstance().showScreen({id: 'account-picker',
40 data: {disableAddUser: false}}); 40 data: {disableAddUser: false}});
41 // The ChromeOS account-picker will hide the AddUser button if a user is 41 // The ChromeOS account-picker will hide the AddUser button if a user is
42 // logged in and the screen is "locked", so we must re-enabled it 42 // logged in and the screen is "locked", so we must re-enabled it
43 $('add-user-header-bar-item').hidden = false; 43 $('add-user-header-bar-item').hidden = false;
44 44
45 // Hide control options if the user does not have the right permissions. 45 // Hide control options if the user does not have the right permissions.
46 $('guest-user-button').hidden = !showGuest; 46 $('guest-user-button').hidden = !showGuest;
47 $('add-user-button').hidden = !showAddPerson; 47 $('add-user-button').hidden = !showAddPerson;
48 $('login-header-bar').hidden = false; 48 $('login-header-bar').hidden = false;
49 49
50 // Disable the context menu, as the Print/Inspect element items don't 50 // Disable the context menu, as the Print/Inspect element items don't
51 // make sense when displayed as a widget. 51 // make sense when displayed as a widget.
52 document.addEventListener('contextmenu', function(e) {e.preventDefault();}); 52 document.addEventListener('contextmenu', function(e) {e.preventDefault();});
53 53
54 var hash = window.location.hash; 54 var hash = window.location.hash;
55 if (hash && hash == '#tutorial') 55 if (hash && hash == '#tutorial')
56 UserManagerTutorial.startTutorial(); 56 UserManagerTutorial.startTutorial();
57 }; 57 };
58 58
59 /** 59 /**
60 * Open a new browser for the given profile. 60 * Open a new browser for the given profile.
61 * @param {string} profilePath The profile's path. 61 * @param {string} profilePath The profile's path.
62 */ 62 */
63 Oobe.launchUser = function(profilePath) { 63 UserManager.launchUser = function(profilePath) {
64 chrome.send('launchUser', [profilePath]); 64 chrome.send('launchUser', [profilePath]);
65 }; 65 };
66 66
67 /** 67 /**
68 * Disables signin UI. 68 * Disables signin UI.
69 */ 69 */
70 Oobe.disableSigninUI = function() { 70 UserManager.disableSigninUI = function() {
71 DisplayManager.disableSigninUI(); 71 DisplayManager.disableSigninUI();
72 }; 72 };
73 73
74 /** 74 /**
75 * Shows signin UI. 75 * Shows signin UI.
76 * @param {string} opt_email An optional email for signin UI. 76 * @param {string} opt_email An optional email for signin UI.
77 */ 77 */
78 Oobe.showSigninUI = function(opt_email) { 78 UserManager.showSigninUI = function(opt_email) {
79 DisplayManager.showSigninUI(opt_email); 79 DisplayManager.showSigninUI(opt_email);
80 }; 80 };
81 81
82 /** 82 /**
83 * Shows sign-in error bubble. 83 * Shows sign-in error bubble.
84 * @param {number} loginAttempts Number of login attemps tried. 84 * @param {number} loginAttempts Number of login attemps tried.
85 * @param {string} message Error message to show. 85 * @param {string} message Error message to show.
86 * @param {string} link Text to use for help link. 86 * @param {string} link Text to use for help link.
87 * @param {number} helpId Help topic Id associated with help link. 87 * @param {number} helpId Help topic Id associated with help link.
88 */ 88 */
89 Oobe.showSignInError = function(loginAttempts, message, link, helpId) { 89 UserManager.showSignInError = function(loginAttempts, message, link, helpId) {
90 DisplayManager.showSignInError(loginAttempts, message, link, helpId); 90 DisplayManager.showSignInError(loginAttempts, message, link, helpId);
91 }; 91 };
92 92
93 /** 93 /**
94 * Clears error bubble as well as optional menus that could be open. 94 * Clears error bubble as well as optional menus that could be open.
95 */ 95 */
96 Oobe.clearErrors = function() { 96 UserManager.clearErrors = function() {
97 DisplayManager.clearErrors(); 97 DisplayManager.clearErrors();
98 }; 98 };
99 99
100 /** 100 /**
101 * Clears password field in user-pod. 101 * Clears password field in user-pod.
102 */ 102 */
103 Oobe.clearUserPodPassword = function() { 103 UserManager.clearUserPodPassword = function() {
104 DisplayManager.clearUserPodPassword(); 104 DisplayManager.clearUserPodPassword();
105 }; 105 };
106 106
107 /** 107 /**
108 * Restores input focus to currently selected pod. 108 * Restores input focus to currently selected pod.
109 */ 109 */
110 Oobe.refocusCurrentPod = function() { 110 UserManager.refocusCurrentPod = function() {
111 DisplayManager.refocusCurrentPod(); 111 DisplayManager.refocusCurrentPod();
112 }; 112 };
113 113
114 /** 114 /**
115 * Show the user manager tutorial 115 * Show the user manager tutorial
116 * @param {string} email The user's email, if signed in. 116 * @param {string} email The user's email, if signed in.
117 * @param {string} displayName The user's display name. 117 * @param {string} displayName The user's display name.
118 */ 118 */
119 Oobe.showUserManagerTutorial = function() { 119 UserManager.showUserManagerTutorial = function() {
120 UserManagerTutorial.startTutorial(); 120 UserManagerTutorial.startTutorial();
121 }; 121 };
122 122
123 // Export 123 // Export
124 return { 124 return {
125 Oobe: Oobe 125 UserManager: UserManager
126 }; 126 };
127 }); 127 });
128 128
129 cr.define('UserManager', function() { 129 cr.define('UserManager', function() {
130 'use strict'; 130 'use strict';
131 131
132 function initialize() { 132 function initialize() {
133 cr.ui.login.DisplayManager.initialize(); 133 cr.ui.login.DisplayManager.initialize();
134 cr.ui.login.UserManagerTutorial.initialize(); 134 cr.ui.login.UserManagerTutorial.initialize();
135 login.AccountPickerScreen.register(); 135 login.AccountPickerScreen.register();
136 cr.ui.Bubble.decorate($('bubble')); 136 cr.ui.Bubble.decorate($('bubble'));
137 login.HeaderBar.decorate($('login-header-bar')); 137 login.HeaderBar.decorate($('login-header-bar'));
138 138
139 // Hide the header bar until the showUserManagerMethod can apply function 139 // Hide the header bar until the showUserManagerMethod can apply function
140 // parameters that affect widget visiblity. 140 // parameters that affect widget visiblity.
141 $('login-header-bar').hidden = true; 141 $('login-header-bar').hidden = true;
142 142
143 chrome.send('userManagerInitialize', [window.location.hash]); 143 chrome.send('userManagerInitialize', [window.location.hash]);
144 } 144 }
145 145
146 // Return an object with all of the exports. 146 // Return an object with all of the exports.
147 return { 147 return {
148 initialize: initialize 148 initialize: initialize
149 }; 149 };
150 }); 150 });
151 151
152 var Oobe = cr.ui.Oobe; 152 // Alias to Oobe for use in src/ui/login/account_picker/user_pod_row.js
153 var Oobe = cr.ui.UserManager;
153 154
154 // Allow selection events on components with editable text (password field) 155 // Allow selection events on components with editable text (password field)
155 // bug (http://code.google.com/p/chromium/issues/detail?id=125863) 156 // bug (http://code.google.com/p/chromium/issues/detail?id=125863)
156 disableTextSelectAndDrag(function(e) { 157 disableTextSelectAndDrag(function(e) {
157 var src = e.target; 158 var src = e.target;
158 return src instanceof HTMLTextAreaElement || 159 return src instanceof HTMLTextAreaElement ||
159 src instanceof HTMLInputElement && 160 src instanceof HTMLInputElement &&
160 /text|password|search/.test(src.type); 161 /text|password|search/.test(src.type);
161 }); 162 });
162 163
163 document.addEventListener('DOMContentLoaded', UserManager.initialize); 164 document.addEventListener('DOMContentLoaded', UserManager.initialize);
OLDNEW
« no previous file with comments | « chrome/browser/resources/md_user_manager/user_manager_pages.js ('k') | chrome/browser/ui/webui/signin/md_user_manager_ui.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698