Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 /* Copyright 2016 The Chromium Authors. All rights reserved. | |
| 2 * Use of this source code is governed by a BSD-style license that can be | |
| 3 * found in the LICENSE file. | |
| 4 */ | |
| 5 | |
| 6 /** @typedef {{username:(string), profilePath:(string)}} */ | |
| 7 var signedInUser; | |
|
Dan Beam
2016/02/12 23:42:24
SignedInUser
Moe
2016/02/20 00:20:59
Done.
| |
| 8 | |
| 9 /** @typedef {{name:(string), filePath:(string), isSupervised:(boolean)}} */ | |
| 10 var profileInfo; | |
|
Dan Beam
2016/02/12 23:42:24
ProfileInfo
Moe
2016/02/20 00:20:59
Done.
| |
| 11 | |
| 12 cr.define('signin', function() { | |
| 13 /** | |
| 14 * API that encapsulates messaging between JS and C++ for creating/importing | |
| 15 * profiles in the user-manager page. | |
| 16 * @constructor | |
| 17 */ | |
| 18 function ProfileApi() {} | |
| 19 | |
| 20 /** @private {?function(!Array<string>)} */ | |
| 21 ProfileApi.getAvailableIconsCallback_ = null; | |
| 22 | |
| 23 /** @private {?function(!Array<signedInUser>)} */ | |
| 24 ProfileApi.getSignedInUsersCallback_ = null; | |
| 25 | |
| 26 /** @private {?function(!string)} */ | |
| 27 ProfileApi.profileCreateErrorCallback_ = null; | |
| 28 | |
| 29 /** @private {?function(!string)} */ | |
| 30 ProfileApi.profileCreateWarningCallback_ = null; | |
| 31 | |
| 32 /** @private {?function(!profileInfo)} */ | |
| 33 ProfileApi.profileCreateSuccessCallback_ = null; | |
|
Dan Beam
2016/02/12 23:42:24
why are you using globals? this means that async
Moe
2016/02/20 00:20:59
I followed the pattern used in sync_private_api.js
| |
| 34 | |
| 35 /** | |
| 36 * Sets the profile create success callback. | |
| 37 * @param {?function(!profileInfo)} callback | |
| 38 */ | |
| 39 ProfileApi.setProfileCreateSuccessCallback = function(callback) { | |
| 40 ProfileApi.profileCreateSuccessCallback_ = callback; | |
| 41 }; | |
| 42 | |
| 43 /** | |
| 44 * Sets the profile create warning callback. | |
| 45 * @param {?function(!string)} callback | |
| 46 */ | |
| 47 ProfileApi.setProfileCreateWarningCallback = function(callback) { | |
| 48 ProfileApi.profileCreateWarningCallback_ = callback; | |
| 49 }; | |
| 50 | |
| 51 /** | |
| 52 * Sets the profile create error callback. | |
| 53 * @param {?function(!string)} callback | |
| 54 */ | |
| 55 ProfileApi.setProfileCreateErrorCallback = function(callback) { | |
| 56 ProfileApi.profileCreateErrorCallback_ = callback; | |
| 57 }; | |
| 58 | |
| 59 /** | |
| 60 * Called from JavaScript. Gets the available profile icons to choose from. | |
| 61 * {!function(!Array<string>)} callback | |
| 62 */ | |
| 63 ProfileApi.getAvailableIcons = function(callback) { | |
| 64 ProfileApi.getAvailableIconsCallback_ = callback; | |
| 65 chrome.send('requestDefaultProfileIcons'); | |
| 66 }; | |
| 67 | |
| 68 /** | |
| 69 * Called from JavaScript. Gets the current signed-in users. | |
| 70 * {!function(!Array<string>)} callback | |
| 71 */ | |
| 72 ProfileApi.getSignedInUsers = function(callback) { | |
| 73 ProfileApi.getSignedInUsersCallback_ = callback; | |
| 74 chrome.send('requestSignedInProfiles'); | |
| 75 }; | |
| 76 | |
| 77 /** | |
| 78 * Called from C++ as a response to getAvailableIcons. | |
| 79 * @param {!Array<string>} iconUrls An array of icon URLs. | |
| 80 * @private | |
| 81 */ | |
| 82 ProfileApi.updateAvailableIcons = function(iconUrls) { | |
| 83 if (ProfileApi.getAvailableIconsCallback_) | |
| 84 ProfileApi.getAvailableIconsCallback_(iconUrls); | |
| 85 }; | |
| 86 | |
| 87 /** | |
| 88 * Called from C++ in response to 'requestSignedInProfiles'. | |
| 89 * @param {!Array<signedInUser>} signedInUsers An array of email addresses of | |
| 90 * signed in users and the corresponding profile path. | |
| 91 * @private | |
| 92 */ | |
| 93 ProfileApi.updateSignedInUsers = function(signedInUsers) { | |
| 94 if (ProfileApi.getSignedInUsersCallback_) | |
| 95 ProfileApi.getSignedInUsersCallback_(signedInUsers); | |
| 96 }; | |
| 97 | |
| 98 /** | |
| 99 * Called from C++ to report supervised profile create errors. | |
| 100 * @param {string} error The error raised while creating a profile. | |
| 101 * @private | |
| 102 */ | |
| 103 ProfileApi.onCreateProfileError = function(error) { | |
| 104 if (ProfileApi.profileCreateErrorCallback_) | |
| 105 ProfileApi.profileCreateErrorCallback_(error); | |
| 106 }; | |
| 107 | |
| 108 /** | |
| 109 * Called from C++ to report supervised profile create warnings. | |
| 110 * @param {string} warning The warning issued while creating a profile. | |
| 111 * @private | |
| 112 */ | |
| 113 ProfileApi.onCreateProfileWarning = function(warning) { | |
| 114 if (ProfileApi.profileCreateWarningCallback_) | |
| 115 ProfileApi.profileCreateWarningCallback_(warning); | |
| 116 }; | |
| 117 | |
| 118 /** | |
| 119 * Called from C++ to report successful creation of a profile. | |
| 120 * @param {!profileInfo} profileInfo | |
| 121 * @private | |
| 122 */ | |
| 123 ProfileApi.onCreateProfileSuccess = function(profileInfo) { | |
| 124 if (ProfileApi.profileCreateSuccessCallback_) | |
| 125 ProfileApi.profileCreateSuccessCallback_(profileInfo); | |
| 126 }; | |
| 127 | |
| 128 return { | |
| 129 ProfileApi: ProfileApi, | |
| 130 }; | |
| 131 }); | |
| OLD | NEW |