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

Side by Side Diff: chrome/browser/resources/chromeos/login/screen_account_picker.js

Issue 9310050: [cros] Error bubble on login is displayed to the left of Gaia frame. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: License fixes. Created 8 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 4
5 /** 5 /**
6 * @fileoverview Account picker screen implementation. 6 * @fileoverview Account picker screen implementation.
7 */ 7 */
8 8
9 cr.define('login', function() { 9 cr.define('login', function() {
10 /** 10 /**
11 * Maximum number of offline login failures before online login.
12 */
13 const MAX_LOGIN_ATTEMPTS_IN_POD = 3;
14
15 /**
11 * Creates a new account picker screen div. 16 * Creates a new account picker screen div.
12 * @constructor 17 * @constructor
13 * @extends {HTMLDivElement} 18 * @extends {HTMLDivElement}
14 */ 19 */
15 var AccountPickerScreen = cr.ui.define('div'); 20 var AccountPickerScreen = cr.ui.define('div');
16 21
17 /** 22 /**
18 * Registers with Oobe. 23 * Registers with Oobe.
19 */ 24 */
20 AccountPickerScreen.register = function() { 25 AccountPickerScreen.register = function() {
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 podRow.handleShow(); 62 podRow.handleShow();
58 63
59 // If this is showing for the lock screen display the sign out button, 64 // If this is showing for the lock screen display the sign out button,
60 // hide the add user button and activate the locked user's pod. 65 // hide the add user button and activate the locked user's pod.
61 var lockedPod = podRow.lockedPod; 66 var lockedPod = podRow.lockedPod;
62 $('add-user-header-bar-item').hidden = !!lockedPod; 67 $('add-user-header-bar-item').hidden = !!lockedPod;
63 $('sign-out-user-item').hidden = !lockedPod; 68 $('sign-out-user-item').hidden = !lockedPod;
64 if (lockedPod) { 69 if (lockedPod) {
65 var focusPod = function() { 70 var focusPod = function() {
66 podRow.focusPod(lockedPod); 71 podRow.focusPod(lockedPod);
67 } 72 };
68 // TODO(altimofeev): empirically I investigated that focus isn't 73 // TODO(altimofeev): empirically I investigated that focus isn't
69 // set correctly if following CSS rules are present: 74 // set correctly if following CSS rules are present:
70 // 75 //
71 // podrow { 76 // podrow {
72 // -webkit-transition: all 200ms ease-in-out; 77 // -webkit-transition: all 200ms ease-in-out;
73 // } 78 // }
74 // .pod { 79 // .pod {
75 // -webkit-transition: all 230ms ease; 80 // -webkit-transition: all 230ms ease;
76 // } 81 // }
77 // 82 //
(...skipping 12 matching lines...) Expand all
90 chrome.send('accountPickerReady', []); 95 chrome.send('accountPickerReady', []);
91 } 96 }
92 }, 97 },
93 98
94 /** 99 /**
95 * Event handler that is invoked just before the frame is hidden. 100 * Event handler that is invoked just before the frame is hidden.
96 * @param data {string} Screen init payload. 101 * @param data {string} Screen init payload.
97 */ 102 */
98 onBeforeHide: function(data) { 103 onBeforeHide: function(data) {
99 $('pod-row').handleHide(); 104 $('pod-row').handleHide();
105 },
106
107 /**
108 * Shows sign-in error bubble.
109 * @param {number} loginAttempts Number of login attemps tried.
110 * @param {HTMLElement} content Content to show in bubble.
111 */
112 showErrorBubble: function(loginAttempts, error) {
113 var activatedPod = $('pod-row').activatedPod;
114 if (!activatedPod)
115 return;
116 if (loginAttempts > MAX_LOGIN_ATTEMPTS_IN_POD) {
117 activatedPod.showSigninUI();
118 } else {
119 $('bubble').showContentForElement(activatedPod.mainInput, error,
120 cr.ui.Bubble.Attachment.BOTTOM);
121 }
100 } 122 }
101 }; 123 };
102 124
103 /** 125 /**
104 * Loads givens users in pod row. 126 * Loads givens users in pod row.
105 * @param {array} users Array of user. 127 * @param {array} users Array of user.
106 * @param {boolean} animated Whether to use init animation. 128 * @param {boolean} animated Whether to use init animation.
107 * @public 129 * @public
108 */ 130 */
109 AccountPickerScreen.loadUsers = function(users, animated) { 131 AccountPickerScreen.loadUsers = function(users, animated) {
(...skipping 24 matching lines...) Expand all
134 * @public 156 * @public
135 */ 157 */
136 AccountPickerScreen.setCapsLockState = function(enabled) { 158 AccountPickerScreen.setCapsLockState = function(enabled) {
137 $('pod-row').classList[enabled ? 'add' : 'remove']('capslock-on'); 159 $('pod-row').classList[enabled ? 'add' : 'remove']('capslock-on');
138 }; 160 };
139 161
140 return { 162 return {
141 AccountPickerScreen: AccountPickerScreen 163 AccountPickerScreen: AccountPickerScreen
142 }; 164 };
143 }); 165 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698