| OLD | NEW |
| 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 /** | 5 /** |
| 6 * This view displays information on ChromeOS specific features. | 6 * This view displays information on ChromeOS specific features. |
| 7 */ | 7 */ |
| 8 var CrosView = (function() { | 8 var CrosView = (function() { |
| 9 'use strict'; | 9 'use strict'; |
| 10 | 10 |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 103 */ | 103 */ |
| 104 function setParseStatus_(error) { | 104 function setParseStatus_(error) { |
| 105 var parseStatus = $(CrosView.PARSE_STATUS_ID); | 105 var parseStatus = $(CrosView.PARSE_STATUS_ID); |
| 106 parseStatus.hidden = false; | 106 parseStatus.hidden = false; |
| 107 parseStatus.textContent = error ? | 107 parseStatus.textContent = error ? |
| 108 'ONC file parse failed: ' + error : 'ONC file successfully parsed'; | 108 'ONC file parse failed: ' + error : 'ONC file successfully parsed'; |
| 109 reset_(); | 109 reset_(); |
| 110 } | 110 } |
| 111 | 111 |
| 112 /** | 112 /** |
| 113 * Set status for current debug mode. |
| 114 * |
| 115 * @private |
| 116 */ |
| 117 function setNetworkDebugModeStatus_(status) { |
| 118 $(CrosView.DEBUG_STATUS_ID).innerText = status; |
| 119 } |
| 120 |
| 121 /** |
| 113 * An event listener for the file selection field. | 122 * An event listener for the file selection field. |
| 114 * | 123 * |
| 115 * @private | 124 * @private |
| 116 */ | 125 */ |
| 117 function handleFileChangeEvent_(event) { | 126 function handleFileChangeEvent_(event) { |
| 118 clearParseStatus_(); | 127 clearParseStatus_(); |
| 119 var file = event.target.files[0]; | 128 var file = event.target.files[0]; |
| 120 var reader = new FileReader(); | 129 var reader = new FileReader(); |
| 121 reader.onloadend = function(e) { | 130 reader.onloadend = function(e) { |
| 122 setFileContent_(reader.result); | 131 setFileContent_(reader.result); |
| 123 }; | 132 }; |
| 124 reader.readAsText(file); | 133 reader.readAsText(file); |
| 125 } | 134 } |
| 126 | 135 |
| 127 /** | 136 /** |
| 128 * Add event listeners for the file selection and passcode input fields. | 137 * Add event listeners for the file selection, passcode input |
| 138 * fields and for buttons for debug mode selection. |
| 129 * | 139 * |
| 130 * @private | 140 * @private |
| 131 */ | 141 */ |
| 132 function addEventListeners_() { | 142 function addEventListeners_() { |
| 133 $(CrosView.IMPORT_ONC_ID).addEventListener('change', | 143 $(CrosView.IMPORT_ONC_ID).addEventListener('change', |
| 134 handleFileChangeEvent_, | 144 handleFileChangeEvent_, |
| 135 false); | 145 false); |
| 136 | 146 |
| 137 $(CrosView.PASSCODE_INPUT_ID).addEventListener('change', function(event) { | 147 $(CrosView.PASSCODE_INPUT_ID).addEventListener('change', function(event) { |
| 138 setPasscode_(this.value); | 148 setPasscode_(this.value); |
| 139 }, false); | 149 }, false); |
| 150 |
| 151 $(CrosView.DEBUG_WIFI_ID).addEventListener('click', function(event) { |
| 152 setNetworkDebugMode_('wifi'); |
| 153 }, false); |
| 154 $(CrosView.DEBUG_ETHERNET_ID).addEventListener('click', function(event) { |
| 155 setNetworkDebugMode_('ethernet'); |
| 156 }, false); |
| 157 $(CrosView.DEBUG_CELLULAR_ID).addEventListener('click', function(event) { |
| 158 setNetworkDebugMode_('cellular'); |
| 159 }, false); |
| 160 $(CrosView.DEBUG_NONE_ID).addEventListener('click', function(event) { |
| 161 setNetworkDebugMode_('none'); |
| 162 }, false); |
| 140 } | 163 } |
| 141 | 164 |
| 142 /** | 165 /** |
| 143 * Reset fileContent and passcode vars. | 166 * Reset fileContent and passcode vars. |
| 144 * | 167 * |
| 145 * @private | 168 * @private |
| 146 */ | 169 */ |
| 147 function reset_() { | 170 function reset_() { |
| 148 fileContent = undefined; | 171 fileContent = undefined; |
| 149 passcode = ''; | 172 passcode = ''; |
| 150 $(CrosView.PASSCODE_ID).hidden = true; | 173 $(CrosView.PASSCODE_ID).hidden = true; |
| 151 } | 174 } |
| 152 | 175 |
| 153 /** | 176 /** |
| 177 * Enables or disables debug mode for a specified subsystem. |
| 178 * |
| 179 * @private |
| 180 */ |
| 181 function setNetworkDebugMode_(subsystem) { |
| 182 $(CrosView.DEBUG_STATUS_ID).innerText = ''; |
| 183 g_browser.setNetworkDebugMode(subsystem); |
| 184 } |
| 185 |
| 186 /** |
| 154 * @constructor | 187 * @constructor |
| 155 * @extends {DivView} | 188 * @extends {DivView} |
| 156 */ | 189 */ |
| 157 function CrosView() { | 190 function CrosView() { |
| 158 assertFirstConstructorCall(CrosView); | 191 assertFirstConstructorCall(CrosView); |
| 159 | 192 |
| 160 // Call superclass's constructor. | 193 // Call superclass's constructor. |
| 161 DivView.call(this, CrosView.MAIN_BOX_ID); | 194 DivView.call(this, CrosView.MAIN_BOX_ID); |
| 162 | 195 |
| 163 g_browser.addCrosONCFileParseObserver(this); | 196 g_browser.addCrosONCFileParseObserver(this); |
| 197 g_browser.addSetNetworkDebugModeObserver(this); |
| 164 addEventListeners_(); | 198 addEventListeners_(); |
| 165 } | 199 } |
| 166 | 200 |
| 167 // ID for special HTML element in category_tabs.html | 201 // ID for special HTML element in category_tabs.html |
| 168 CrosView.TAB_HANDLE_ID = 'tab-handle-chromeos'; | 202 CrosView.TAB_HANDLE_ID = 'tab-handle-chromeos'; |
| 169 | 203 |
| 170 CrosView.MAIN_BOX_ID = 'chromeos-view-tab-content'; | 204 CrosView.MAIN_BOX_ID = 'chromeos-view-tab-content'; |
| 171 CrosView.IMPORT_DIV_ID = 'chromeos-view-import-div'; | 205 CrosView.IMPORT_DIV_ID = 'chromeos-view-import-div'; |
| 172 CrosView.IMPORT_ONC_ID = 'chromeos-view-import-onc'; | 206 CrosView.IMPORT_ONC_ID = 'chromeos-view-import-onc'; |
| 173 CrosView.PASSCODE_ID = 'chromeos-view-password-div'; | 207 CrosView.PASSCODE_ID = 'chromeos-view-password-div'; |
| 174 CrosView.PASSCODE_INPUT_ID = 'chromeos-view-onc-password'; | 208 CrosView.PASSCODE_INPUT_ID = 'chromeos-view-onc-password'; |
| 175 CrosView.PARSE_STATUS_ID = 'chromeos-view-parse-status'; | 209 CrosView.PARSE_STATUS_ID = 'chromeos-view-parse-status'; |
| 210 CrosView.DEBUG_WIFI_ID = 'chromeos-view-network-debugging-wifi'; |
| 211 CrosView.DEBUG_ETHERNET_ID = 'chromeos-view-network-debugging-ethernet'; |
| 212 CrosView.DEBUG_CELLULAR_ID = 'chromeos-view-network-debugging-cellular'; |
| 213 CrosView.DEBUG_NONE_ID = 'chromeos-view-network-debugging-none'; |
| 214 CrosView.DEBUG_STATUS_ID = 'chromeos-view-network-debugging-status'; |
| 176 | 215 |
| 177 cr.addSingletonGetter(CrosView); | 216 cr.addSingletonGetter(CrosView); |
| 178 | 217 |
| 179 CrosView.prototype = { | 218 CrosView.prototype = { |
| 180 // Inherit from DivView. | 219 // Inherit from DivView. |
| 181 __proto__: DivView.prototype, | 220 __proto__: DivView.prototype, |
| 182 | 221 |
| 183 onONCFileParse: setParseStatus_, | 222 onONCFileParse: setParseStatus_, |
| 223 onSetNetworkDebugMode: setNetworkDebugModeStatus_, |
| 184 }; | 224 }; |
| 185 | 225 |
| 186 return CrosView; | 226 return CrosView; |
| 187 })(); | 227 })(); |
| OLD | NEW |