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

Side by Side Diff: remoting/webapp/remoting.js

Issue 12250011: Get extension version synchrously from the manifest. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 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
« no previous file with comments | « remoting/webapp/jscompiler_hacks.js ('k') | remoting/webapp/server_log_entry.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 'use strict'; 5 'use strict';
6 6
7 /** @suppress {duplicate} */ 7 /** @suppress {duplicate} */
8 var remoting = remoting || {}; 8 var remoting = remoting || {};
9 9
10 /** @type {remoting.HostSession} */ remoting.hostSession = null; 10 /** @type {remoting.HostSession} */ remoting.hostSession = null;
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 }; 42 };
43 43
44 /** 44 /**
45 * Entry point for app initialization. 45 * Entry point for app initialization.
46 */ 46 */
47 remoting.init = function() { 47 remoting.init = function() {
48 // TODO(jamiewalch): Remove this when we migrate to apps v2 48 // TODO(jamiewalch): Remove this when we migrate to apps v2
49 // (http://crbug.com/ 134213). 49 // (http://crbug.com/ 134213).
50 remoting.initMockStorage(); 50 remoting.initMockStorage();
51 51
52 remoting.logExtensionInfoAsync_(); 52 remoting.logExtensionInfo_();
53 l10n.localize(); 53 l10n.localize();
54 // Create global objects. 54 // Create global objects.
55 remoting.settings = new remoting.Settings(); 55 remoting.settings = new remoting.Settings();
56 remoting.oauth2 = new remoting.OAuth2(); 56 remoting.oauth2 = new remoting.OAuth2();
57 // TODO(jamiewalch): Reinstate this when we migrate to apps v2 57 // TODO(jamiewalch): Reinstate this when we migrate to apps v2
58 // (http://crbug.com/ 134213). 58 // (http://crbug.com/ 134213).
59 // remoting.identity = new remoting.Identity(consentRequired_); 59 // remoting.identity = new remoting.Identity(consentRequired_);
60 remoting.identity = remoting.oauth2; 60 remoting.identity = remoting.oauth2;
61 remoting.stats = new remoting.ConnectionStats( 61 remoting.stats = new remoting.ConnectionStats(
62 document.getElementById('statistics')); 62 document.getElementById('statistics'));
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
159 */ 159 */
160 var onHostState = function(state, localHostId) { 160 var onHostState = function(state, localHostId) {
161 remoting.hostList.setLocalHostStateAndId(state, localHostId); 161 remoting.hostList.setLocalHostStateAndId(state, localHostId);
162 remoting.hostList.display(); 162 remoting.hostList.display();
163 }; 163 };
164 remoting.hostController.getLocalHostStateAndId(onHostState); 164 remoting.hostController.getLocalHostStateAndId(onHostState);
165 }; 165 };
166 166
167 /** 167 /**
168 * Log information about the current extension. 168 * Log information about the current extension.
169 * The extension manifest is loaded and parsed to extract this info. 169 * The extension manifest is parsed to extract this info.
170 */ 170 */
171 remoting.logExtensionInfoAsync_ = function() { 171 remoting.logExtensionInfo_ = function() {
172 /** @type {XMLHttpRequest} */ 172 var manifest = chrome.runtime.getManifest();
173 var xhr = new XMLHttpRequest(); 173 if (manifest.version) {
garykac 2013/02/12 21:08:37 does this need to be (manifest && manifest.version
Jamie 2013/02/12 22:04:21 The documentation doesn't say that getManifest can
174 xhr.open('GET', 'manifest.json'); 174 var name = chrome.i18n.getMessage('PRODUCT_NAME');
175 xhr.onload = function(e) { 175 console.log(name + ' version: ' + manifest.version);
176 var manifest = 176 } else {
177 /** @type {{name: string, version: string, default_locale: string}} */ 177 console.error('Failed to get product version. Corrupt manifest?');
178 jsonParseSafe(xhr.responseText);
179 if (manifest) {
180 var name = chrome.i18n.getMessage('PRODUCT_NAME');
181 console.log(name + ' version: ' + manifest.version);
182 } else {
183 console.error('Failed to get product version. Corrupt manifest?');
184 }
185 } 178 }
186 xhr.send(null);
187 }; 179 };
188 180
189 /** 181 /**
190 * If an IT2Me client or host is active then prompt the user before closing. 182 * If an IT2Me client or host is active then prompt the user before closing.
191 * If a Me2Me client is active then don't bother, since closing the window is 183 * If a Me2Me client is active then don't bother, since closing the window is
192 * the more intuitive way to end a Me2Me session, and re-connecting is easy. 184 * the more intuitive way to end a Me2Me session, and re-connecting is easy.
193 * 185 *
194 * @return {?string} The prompt string if a connection is active. 186 * @return {?string} The prompt string if a connection is active.
195 */ 187 */
196 remoting.promptClose = function() { 188 remoting.promptClose = function() {
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
368 /** @param {chrome.Tab} tab The current tab. */ 360 /** @param {chrome.Tab} tab The current tab. */
369 var tabCallback = function(tab) { 361 var tabCallback = function(tab) {
370 if (tab.pinned) { 362 if (tab.pinned) {
371 callback(remoting.TabType.PINNED); 363 callback(remoting.TabType.PINNED);
372 } else { 364 } else {
373 chrome.windows.get(tab.windowId, null, windowCallback); 365 chrome.windows.get(tab.windowId, null, windowCallback);
374 } 366 }
375 }; 367 };
376 chrome.tabs.getCurrent(tabCallback); 368 chrome.tabs.getCurrent(tabCallback);
377 } 369 }
OLDNEW
« no previous file with comments | « remoting/webapp/jscompiler_hacks.js ('k') | remoting/webapp/server_log_entry.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698