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

Side by Side Diff: chrome/browser/resources/print_preview/data/app_state.js

Issue 2939273002: DO NOT SUBMIT: what chrome/browser/resources/ could eventually look like with clang-format (Closed)
Patch Set: Created 3 years, 6 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 (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 cr.exportPath('print_preview'); 5 cr.exportPath('print_preview');
6 6
7 /** 7 /**
8 * Enumeration of field names for serialized app state. 8 * Enumeration of field names for serialized app state.
9 * @enum {string} 9 * @enum {string}
10 */ 10 */
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 * @private 125 * @private
126 */ 126 */
127 AppState.NATIVE_FUNCTION_NAME_ = 'saveAppState'; 127 AppState.NATIVE_FUNCTION_NAME_ = 'saveAppState';
128 128
129 AppState.prototype = { 129 AppState.prototype = {
130 /** 130 /**
131 * @return {?RecentDestination} The most recent destination, 131 * @return {?RecentDestination} The most recent destination,
132 * which is currently the selected destination. 132 * which is currently the selected destination.
133 */ 133 */
134 get selectedDestination() { 134 get selectedDestination() {
135 return (this.state_[print_preview.AppStateField.RECENT_DESTINATIONS]. 135 return (this.state_[print_preview.AppStateField.RECENT_DESTINATIONS]
136 length > 0) ? 136 .length > 0) ?
137 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS][0] : 137 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS][0] :
138 null; 138 null;
139 }, 139 },
140 140
141 /** 141 /**
142 * @return {boolean} Whether the selected destination is valid. 142 * @return {boolean} Whether the selected destination is valid.
143 */ 143 */
144 isSelectedDestinationValid: function() { 144 isSelectedDestinationValid: function() {
145 return !!this.selectedDestination && 145 return !!this.selectedDestination && !!this.selectedDestination.id &&
146 !!this.selectedDestination.id && 146 !!this.selectedDestination.origin;
147 !!this.selectedDestination.origin;
148 }, 147 },
149 148
150 /** 149 /**
151 * @return {?Array<!RecentDestination>} The 150 * @return {?Array<!RecentDestination>} The
152 * AppState.NUM_DESTINATIONS_ most recent destinations. 151 * AppState.NUM_DESTINATIONS_ most recent destinations.
153 */ 152 */
154 get recentDestinations() { 153 get recentDestinations() {
155 return this.state_[print_preview.AppStateField.RECENT_DESTINATIONS]; 154 return this.state_[print_preview.AppStateField.RECENT_DESTINATIONS];
156 }, 155 },
157 156
(...skipping 11 matching lines...) Expand all
169 return this.state_.hasOwnProperty(field); 168 return this.state_.hasOwnProperty(field);
170 }, 169 },
171 170
172 /** 171 /**
173 * @param {!print_preview.AppStateField} field App state field to get. 172 * @param {!print_preview.AppStateField} field App state field to get.
174 * @return {?} Value of the app state field. 173 * @return {?} Value of the app state field.
175 */ 174 */
176 getField: function(field) { 175 getField: function(field) {
177 if (field == print_preview.AppStateField.CUSTOM_MARGINS) { 176 if (field == print_preview.AppStateField.CUSTOM_MARGINS) {
178 return this.state_[field] ? 177 return this.state_[field] ?
179 print_preview.Margins.parse(this.state_[field]) : null; 178 print_preview.Margins.parse(this.state_[field]) :
179 null;
180 } else { 180 } else {
181 return this.state_[field]; 181 return this.state_[field];
182 } 182 }
183 }, 183 },
184 184
185 /** 185 /**
186 * Initializes the app state from a serialized string returned by the native 186 * Initializes the app state from a serialized string returned by the native
187 * layer. 187 * layer.
188 * @param {?string} serializedAppStateStr Serialized string representation 188 * @param {?string} serializedAppStateStr Serialized string representation
189 * of the app state. 189 * of the app state.
190 */ 190 */
191 init: function(serializedAppStateStr) { 191 init: function(serializedAppStateStr) {
192 if (serializedAppStateStr) { 192 if (serializedAppStateStr) {
193 try { 193 try {
194 var state = JSON.parse(serializedAppStateStr); 194 var state = JSON.parse(serializedAppStateStr);
195 if (state[print_preview.AppStateField.VERSION] == AppState.VERSION_) { 195 if (state[print_preview.AppStateField.VERSION] == AppState.VERSION_) {
196 this.state_ = /** @type {Object} */(state); 196 this.state_ = /** @type {Object} */ (state);
197 } 197 }
198 } catch(e) { 198 } catch (e) {
199 console.error('Unable to parse state: ' + e); 199 console.error('Unable to parse state: ' + e);
200 // Proceed with default state. 200 // Proceed with default state.
201 } 201 }
202 } else { 202 } else {
203 // Set some state defaults. 203 // Set some state defaults.
204 this.state_[print_preview.AppStateField.IS_GCP_PROMO_DISMISSED] = false; 204 this.state_[print_preview.AppStateField.IS_GCP_PROMO_DISMISSED] = false;
205 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS] = []; 205 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS] = [];
206 } 206 }
207 if (!this.state_[print_preview.AppStateField.RECENT_DESTINATIONS]) { 207 if (!this.state_[print_preview.AppStateField.RECENT_DESTINATIONS]) {
208 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS] = []; 208 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS] = [];
209 } else if (!(this.state_[print_preview.AppStateField.RECENT_DESTINATIONS] 209 } else if (!(this.state_[print_preview.AppStateField
210 instanceof Array)) { 210 .RECENT_DESTINATIONS] instanceof
211 Array)) {
211 var tmp = this.state_[print_preview.AppStateField.RECENT_DESTINATIONS]; 212 var tmp = this.state_[print_preview.AppStateField.RECENT_DESTINATIONS];
212 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS] = [tmp]; 213 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS] = [tmp];
213 } else if (!this.state_[ 214 } else if (
214 print_preview.AppStateField.RECENT_DESTINATIONS][0] || 215 !this.state_[print_preview.AppStateField.RECENT_DESTINATIONS][0] ||
215 !this.state_[print_preview.AppStateField.RECENT_DESTINATIONS][0].id) { 216 !this.state_[print_preview.AppStateField.RECENT_DESTINATIONS][0].id) {
216 // read in incorrectly 217 // read in incorrectly
217 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS] = []; 218 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS] = [];
218 } else if (this.state_[print_preview.AppStateField.RECENT_DESTINATIONS]. 219 } else if (
219 length > AppState.NUM_DESTINATIONS_) { 220 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS].length >
221 AppState.NUM_DESTINATIONS_) {
220 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS].length = 222 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS].length =
221 AppState.NUM_DESTINATIONS_; 223 AppState.NUM_DESTINATIONS_;
222 } 224 }
223 }, 225 },
224 226
225 /** 227 /**
226 * Sets to initialized state. Now object will accept persist requests. 228 * Sets to initialized state. Now object will accept persist requests.
227 */ 229 */
228 setInitialized: function() { 230 setInitialized: function() {
229 this.isInitialized_ = true; 231 this.isInitialized_ = true;
(...skipping 19 matching lines...) Expand all
249 * Persists the selected destination. 251 * Persists the selected destination.
250 * @param {!print_preview.Destination} dest Destination to persist. 252 * @param {!print_preview.Destination} dest Destination to persist.
251 */ 253 */
252 persistSelectedDestination: function(dest) { 254 persistSelectedDestination: function(dest) {
253 if (!this.isInitialized_) 255 if (!this.isInitialized_)
254 return; 256 return;
255 257
256 // Determine if this destination is already in the recent destinations, 258 // Determine if this destination is already in the recent destinations,
257 // and where in the array it is located. 259 // and where in the array it is located.
258 var newDestination = new RecentDestination(dest); 260 var newDestination = new RecentDestination(dest);
259 var indexFound = this.state_[ 261 var indexFound =
260 print_preview.AppStateField.RECENT_DESTINATIONS].findIndex( 262 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS]
261 function(recent) { 263 .findIndex(function(recent) {
262 return (newDestination.id == recent.id && 264 return (
263 newDestination.origin == recent.origin); 265 newDestination.id == recent.id &&
266 newDestination.origin == recent.origin);
264 }); 267 });
265 268
266 // No change 269 // No change
267 if (indexFound == 0) { 270 if (indexFound == 0) {
268 this.persist_(); 271 this.persist_();
269 return; 272 return;
270 } 273 }
271 274
272 // Shift the array so that the nth most recent destination is located at 275 // Shift the array so that the nth most recent destination is located at
273 // index n. 276 // index n.
274 if (indexFound == -1 && 277 if (indexFound == -1 &&
275 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS].length == 278 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS].length ==
276 AppState.NUM_DESTINATIONS_) { 279 AppState.NUM_DESTINATIONS_) {
277 indexFound = AppState.NUM_DESTINATIONS_ - 1; 280 indexFound = AppState.NUM_DESTINATIONS_ - 1;
278 } 281 }
279 if (indexFound != -1) 282 if (indexFound != -1)
280 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS].splice( 283 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS].splice(
281 indexFound, 1); 284 indexFound, 1);
282 285
283 // Add the most recent destination 286 // Add the most recent destination
284 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS].splice( 287 this.state_[print_preview.AppStateField.RECENT_DESTINATIONS].splice(
285 0, 0, newDestination); 288 0, 0, newDestination);
286 289
(...skipping 11 matching lines...) Expand all
298 this.state_[print_preview.AppStateField.IS_GCP_PROMO_DISMISSED] = 301 this.state_[print_preview.AppStateField.IS_GCP_PROMO_DISMISSED] =
299 isGcpPromoDismissed; 302 isGcpPromoDismissed;
300 this.persist_(); 303 this.persist_();
301 }, 304 },
302 305
303 /** 306 /**
304 * Calls into the native layer to persist the application state. 307 * Calls into the native layer to persist the application state.
305 * @private 308 * @private
306 */ 309 */
307 persist_: function() { 310 persist_: function() {
308 chrome.send(AppState.NATIVE_FUNCTION_NAME_, 311 chrome.send(
309 [JSON.stringify(this.state_)]); 312 AppState.NATIVE_FUNCTION_NAME_, [JSON.stringify(this.state_)]);
310 } 313 }
311 }; 314 };
312 315
313 return { 316 return {AppState: AppState};
314 AppState: AppState
315 };
316 }); 317 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698