Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 | 6 * @fileoverview |
| 7 * A module that contains basic utility components and methods for the | 7 * A module that contains basic utility components and methods for the |
| 8 * chromoting project | 8 * chromoting project |
| 9 * | 9 * |
| 10 */ | 10 */ |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 49 } catch (/** @type {Error} */ error) { | 49 } catch (/** @type {Error} */ error) { |
| 50 var callstack = error.stack | 50 var callstack = error.stack |
| 51 .replace(/^\s+(at eval )?at\s+/gm, '') // Remove 'at' and indentation. | 51 .replace(/^\s+(at eval )?at\s+/gm, '') // Remove 'at' and indentation. |
| 52 .split('\n'); | 52 .split('\n'); |
| 53 callstack.splice(0,2); // Remove the stack of the current function. | 53 callstack.splice(0,2); // Remove the stack of the current function. |
| 54 } | 54 } |
| 55 return callstack.join('\n'); | 55 return callstack.join('\n'); |
| 56 }; | 56 }; |
| 57 | 57 |
| 58 /** | 58 /** |
| 59 * @param {*} value | |
| 60 * @return T | |
| 61 * @template T | |
| 62 */ | |
| 63 base.reinterpret_cast = function(value) { | |
|
Jamie
2015/04/07 01:13:11
You don't seem to be using this.
John Williams
2015/04/07 20:10:25
Yeah, I thought this would make certain casts less
| |
| 64 return value; | |
| 65 }; | |
| 66 | |
| 67 /** | |
| 59 * @interface | 68 * @interface |
| 60 */ | 69 */ |
| 61 base.Disposable = function() {}; | 70 base.Disposable = function() {}; |
| 62 base.Disposable.prototype.dispose = function() {}; | 71 base.Disposable.prototype.dispose = function() {}; |
| 63 | 72 |
| 64 /** | 73 /** |
| 65 * @constructor | 74 * @constructor |
| 66 * @param {...base.Disposable} var_args | 75 * @param {...base.Disposable} var_args |
| 67 * @implements {base.Disposable} | 76 * @implements {base.Disposable} |
| 68 */ | 77 */ |
| (...skipping 658 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 727 */ | 736 */ |
| 728 base.resizeWindowToContent = function() { | 737 base.resizeWindowToContent = function() { |
| 729 var appWindow = chrome.app.window.current(); | 738 var appWindow = chrome.app.window.current(); |
| 730 var outerBounds = appWindow.outerBounds; | 739 var outerBounds = appWindow.outerBounds; |
| 731 var borderY = outerBounds.height - appWindow.innerBounds.height; | 740 var borderY = outerBounds.height - appWindow.innerBounds.height; |
| 732 appWindow.resizeTo(outerBounds.width, document.body.clientHeight + borderY); | 741 appWindow.resizeTo(outerBounds.width, document.body.clientHeight + borderY); |
| 733 // Sometimes, resizing the window causes its position to be reset to (0, 0), | 742 // Sometimes, resizing the window causes its position to be reset to (0, 0), |
| 734 // so restore it explicitly. | 743 // so restore it explicitly. |
| 735 appWindow.moveTo(outerBounds.left, outerBounds.top); | 744 appWindow.moveTo(outerBounds.left, outerBounds.top); |
| 736 }; | 745 }; |
| 746 | |
| 747 /** | |
| 748 * @return {string} A random UUID. | |
| 749 */ | |
| 750 base.generateUuid = function() { | |
|
Jamie
2015/04/07 01:13:12
Move this up below generateXsrfToken, since it's c
John Williams
2015/04/07 20:10:25
Done.
| |
| 751 var random = new Uint16Array(8); | |
| 752 window.crypto.getRandomValues(random); | |
| 753 /** @type {Array<string>} */ | |
| 754 var e = new Array(); | |
| 755 for (var i = 0; i < 8; i++) { | |
| 756 e[i] = (/** @type {number} */ (random[i]) + 0x10000). | |
| 757 toString(16).substring(1); | |
| 758 } | |
| 759 return e[0] + e[1] + '-' + e[2] + '-' + e[3] + '-' + | |
| 760 e[4] + '-' + e[5] + e[6] + e[7]; | |
| 761 }; | |
| OLD | NEW |