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 Initializes the injected content script on the document. | 6 * @fileoverview Initializes the injected content script on the document. |
| 7 * | 7 * |
| 8 * NOTE(deboer): This file will automatically initialize ChromeVox. If you can | 8 * NOTE(deboer): This file will automatically initialize ChromeVox. If you can |
| 9 * control when ChromeVox starts, consider using cvox.InitGlobals instead. | 9 * control when ChromeVox starts, consider using cvox.InitGlobals instead. |
| 10 * | 10 * |
| (...skipping 27 matching lines...) Expand all Loading... | |
| 38 * Maximum retry timeout for initialization. Note that exponential backoff | 38 * Maximum retry timeout for initialization. Note that exponential backoff |
| 39 * used, so the actual time before giving up is about twice this number. | 39 * used, so the actual time before giving up is about twice this number. |
| 40 * @const {number} | 40 * @const {number} |
| 41 * @private | 41 * @private |
| 42 */ | 42 */ |
| 43 cvox.ChromeVox.MAX_INIT_TIMEOUT_ = 30000; | 43 cvox.ChromeVox.MAX_INIT_TIMEOUT_ = 30000; |
| 44 | 44 |
| 45 | 45 |
| 46 /** | 46 /** |
| 47 * Flag indicating if ChromeVox Classic is enabled based on the Next | 47 * Flag indicating if ChromeVox Classic is enabled based on the Next |
| 48 * background page. Initializes to true for non-top level | 48 * background page which sends the state at page load. |
| 49 * (i.e. iframes) windows. For top level windows, left undefined and | |
| 50 * set when background page replies. | |
| 51 * @type {boolean|undefined} | 49 * @type {boolean|undefined} |
| 52 * @private | 50 * @private |
| 53 */ | 51 */ |
| 54 cvox.ChromeVox.isClassicEnabled_ = window.top == window ? undefined : true; | 52 cvox.ChromeVox.isClassicEnabled_ = undefined; |
|
dmazzoni
2016/01/20 06:31:05
Is this from a different patch?
| |
| 55 | 53 |
| 56 | 54 |
| 57 /** | 55 /** |
| 58 * Call the init function later, safely. | 56 * Call the init function later, safely. |
| 59 * @param {string} reason A developer-readable string to log to the console | 57 * @param {string} reason A developer-readable string to log to the console |
| 60 * explaining why we're trying again. | 58 * explaining why we're trying again. |
| 61 * @private | 59 * @private |
| 62 */ | 60 */ |
| 63 cvox.ChromeVox.recallInit_ = function(reason) { | 61 cvox.ChromeVox.recallInit_ = function(reason) { |
| 64 if (cvox.ChromeVox.initTimeout_ > cvox.ChromeVox.MAX_INIT_TIMEOUT_) { | 62 if (cvox.ChromeVox.initTimeout_ > cvox.ChromeVox.MAX_INIT_TIMEOUT_) { |
| 65 window.console.log(reason + | 63 if (cvox.ChromeVox.isClassicEnabled_ !== undefined) { |
| 66 ' Taking too long - giving up.'); | 64 window.console.log(reason + |
| 67 return; | 65 ' Taking too long - giving up.'); |
| 66 return; | |
| 67 } else { | |
| 68 // Default to enabling classic after the timeout. | |
| 69 cvox.ChromeVox.isClassicEnabled_ = true; | |
| 70 } | |
| 68 } | 71 } |
| 69 window.console.log(reason + | 72 window.console.log(reason + |
| 70 ' Will try again in ' + | 73 ' Will try again in ' + |
| 71 cvox.ChromeVox.initTimeout_ + 'ms'); | 74 cvox.ChromeVox.initTimeout_ + 'ms'); |
| 72 cvox.ChromeVox.initTimer_ = window.setTimeout( | 75 cvox.ChromeVox.initTimer_ = window.setTimeout( |
| 73 cvox.ChromeVox.initDocument, | 76 cvox.ChromeVox.initDocument, |
| 74 cvox.ChromeVox.initTimeout_); | 77 cvox.ChromeVox.initTimeout_); |
| 75 cvox.ChromeVox.initTimeout_ *= 2; | 78 cvox.ChromeVox.initTimeout_ *= 2; |
| 76 }; | 79 }; |
| 77 | 80 |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 156 cvox.ChromeVox.isClassicEnabled_ = msg['isClassicEnabled']; | 159 cvox.ChromeVox.isClassicEnabled_ = msg['isClassicEnabled']; |
| 157 } | 160 } |
| 158 }); | 161 }); |
| 159 | 162 |
| 160 cvox.ExtensionBridge.addDisconnectListener(function() { | 163 cvox.ExtensionBridge.addDisconnectListener(function() { |
| 161 if (cvox.ChromeVox.initTimer_ > 0) { | 164 if (cvox.ChromeVox.initTimer_ > 0) { |
| 162 window.clearTimeout(cvox.ChromeVox.initTimer_); | 165 window.clearTimeout(cvox.ChromeVox.initTimer_); |
| 163 cvox.ChromeVox.initTimer_ = 0; | 166 cvox.ChromeVox.initTimer_ = 0; |
| 164 } | 167 } |
| 165 }); | 168 }); |
| OLD | NEW |