| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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.define('options', function() { | 5 cr.define('options', function() { |
| 6 const OptionsPage = options.OptionsPage; | 6 const OptionsPage = options.OptionsPage; |
| 7 const ArrayDataModel = cr.ui.ArrayDataModel; | 7 const ArrayDataModel = cr.ui.ArrayDataModel; |
| 8 | 8 |
| 9 // | 9 // |
| 10 // BrowserOptions class | 10 // BrowserOptions class |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 106 // Ensure that changes are committed when closing the page. | 106 // Ensure that changes are committed when closing the page. |
| 107 window.addEventListener('unload', function() { | 107 window.addEventListener('unload', function() { |
| 108 if (document.activeElement == homepageField) | 108 if (document.activeElement == homepageField) |
| 109 homepageField.blur(); | 109 homepageField.blur(); |
| 110 }); | 110 }); |
| 111 | 111 |
| 112 if (!cr.isChromeOS) { | 112 if (!cr.isChromeOS) { |
| 113 $('defaultBrowserUseAsDefaultButton').onclick = function(event) { | 113 $('defaultBrowserUseAsDefaultButton').onclick = function(event) { |
| 114 chrome.send('becomeDefaultBrowser'); | 114 chrome.send('becomeDefaultBrowser'); |
| 115 }; | 115 }; |
| 116 |
| 117 $('autoLaunch').addEventListener('click', |
| 118 this.handleAutoLaunchChanged_); |
| 116 } | 119 } |
| 117 | 120 |
| 118 var startupPagesList = $('startupPagesList'); | 121 var startupPagesList = $('startupPagesList'); |
| 119 options.browser_options.StartupPageList.decorate(startupPagesList); | 122 options.browser_options.StartupPageList.decorate(startupPagesList); |
| 120 startupPagesList.autoExpands = true; | 123 startupPagesList.autoExpands = true; |
| 121 | 124 |
| 122 // Check if we are in the guest mode. | 125 // Check if we are in the guest mode. |
| 123 if (cr.commandLine.options['--bwsi']) { | 126 if (cr.commandLine.options['--bwsi']) { |
| 124 // Hide the startup section. | 127 // Hide the startup section. |
| 125 $('startupSection').hidden = true; | 128 $('startupSection').hidden = true; |
| (...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 274 var startupPagesList = $('startupPagesList'); | 277 var startupPagesList = $('startupPagesList'); |
| 275 startupPagesList.disabled = disable; | 278 startupPagesList.disabled = disable; |
| 276 // Explicitly set disabled state for input text elements. | 279 // Explicitly set disabled state for input text elements. |
| 277 var inputs = startupPagesList.querySelectorAll("input[type='text']"); | 280 var inputs = startupPagesList.querySelectorAll("input[type='text']"); |
| 278 for (var i = 0; i < inputs.length; i++) | 281 for (var i = 0; i < inputs.length; i++) |
| 279 inputs[i].disabled = disable; | 282 inputs[i].disabled = disable; |
| 280 $('startupUseCurrentButton').disabled = disable; | 283 $('startupUseCurrentButton').disabled = disable; |
| 281 }, | 284 }, |
| 282 | 285 |
| 283 /** | 286 /** |
| 284 * Handle change events of the preference | 287 * Handles change events of the preference |
| 285 * 'session.urls_to_restore_on_startup'. | 288 * 'session.urls_to_restore_on_startup'. |
| 286 * @param {event} preference changed event. | 289 * @param {event} preference changed event. |
| 287 * @private | 290 * @private |
| 288 */ | 291 */ |
| 289 handleStartupPageListChange_: function(event) { | 292 handleStartupPageListChange_: function(event) { |
| 290 this.startup_pages_pref_.controlledBy = event.value['controlledBy']; | 293 this.startup_pages_pref_.controlledBy = event.value['controlledBy']; |
| 291 this.updateCustomStartupPageControlStates_(); | 294 this.updateCustomStartupPageControlStates_(); |
| 292 }, | 295 }, |
| 293 | 296 |
| 294 /** | 297 /** |
| 295 * Set the default search engine based on the popup selection. | 298 * Sets the default search engine based on the popup selection. |
| 296 */ | 299 */ |
| 297 setDefaultSearchEngine_: function() { | 300 setDefaultSearchEngine_: function() { |
| 298 var engineSelect = $('defaultSearchEngine'); | 301 var engineSelect = $('defaultSearchEngine'); |
| 299 var selectedIndex = engineSelect.selectedIndex; | 302 var selectedIndex = engineSelect.selectedIndex; |
| 300 if (selectedIndex >= 0) { | 303 if (selectedIndex >= 0) { |
| 301 var selection = engineSelect.options[selectedIndex]; | 304 var selection = engineSelect.options[selectedIndex]; |
| 302 chrome.send('setDefaultSearchEngine', [String(selection.value)]); | 305 chrome.send('setDefaultSearchEngine', [String(selection.value)]); |
| 303 } | 306 } |
| 304 }, | 307 }, |
| 305 | 308 |
| 306 /** | 309 /** |
| 310 * Sets or clear whether Chrome should Auto-launch on computer startup. |
| 311 */ |
| 312 handleAutoLaunchChanged_: function() { |
| 313 chrome.send('toggleAutoLaunch', [Boolean($('autoLaunch').checked)]); |
| 314 }, |
| 315 |
| 316 /** |
| 307 * Sends an asynchronous request for new autocompletion suggestions for the | 317 * Sends an asynchronous request for new autocompletion suggestions for the |
| 308 * the given query. When new suggestions are available, the C++ handler will | 318 * the given query. When new suggestions are available, the C++ handler will |
| 309 * call updateAutocompleteSuggestions_. | 319 * call updateAutocompleteSuggestions_. |
| 310 * @param {string} query List of autocomplete suggestions. | 320 * @param {string} query List of autocomplete suggestions. |
| 311 * @private | 321 * @private |
| 312 */ | 322 */ |
| 313 requestAutocompleteSuggestions_: function(query) { | 323 requestAutocompleteSuggestions_: function(query) { |
| 314 chrome.send('requestAutocompleteSuggestions', [query]); | 324 chrome.send('requestAutocompleteSuggestions', [query]); |
| 315 }, | 325 }, |
| 316 | 326 |
| 317 /** | 327 /** |
| 318 * Updates the autocomplete suggestion list with the given entries. | 328 * Updates the autocomplete suggestion list with the given entries. |
| 319 * @param {Array} pages List of autocomplete suggestions. | 329 * @param {Array} pages List of autocomplete suggestions. |
| 320 * @private | 330 * @private |
| 321 */ | 331 */ |
| 322 updateAutocompleteSuggestions_: function(suggestions) { | 332 updateAutocompleteSuggestions_: function(suggestions) { |
| 323 var list = this.autocompleteList_; | 333 var list = this.autocompleteList_; |
| 324 // If the trigger for this update was a value being selected from the | 334 // If the trigger for this update was a value being selected from the |
| 325 // current list, do nothing. | 335 // current list, do nothing. |
| 326 if (list.targetInput && list.selectedItem && | 336 if (list.targetInput && list.selectedItem && |
| 327 list.selectedItem['url'] == list.targetInput.value) | 337 list.selectedItem['url'] == list.targetInput.value) |
| 328 return; | 338 return; |
| 329 list.suggestions = suggestions; | 339 list.suggestions = suggestions; |
| 330 }, | 340 }, |
| 341 |
| 342 /** |
| 343 * Shows the autoLaunch preference and initializes its checkbox value. |
| 344 */ |
| 345 updateAutoLaunchState_: function(enabled) { |
| 346 $('autoLaunchOption').hidden = false; |
| 347 $('autoLaunch').checked = enabled; |
| 348 }, |
| 331 }; | 349 }; |
| 332 | 350 |
| 333 BrowserOptions.updateDefaultBrowserState = function(statusString, isDefault, | 351 BrowserOptions.updateDefaultBrowserState = function(statusString, isDefault, |
| 334 canBeDefault) { | 352 canBeDefault) { |
| 335 if (!cr.isChromeOS) { | 353 if (!cr.isChromeOS) { |
| 336 BrowserOptions.getInstance().updateDefaultBrowserState_(statusString, | 354 BrowserOptions.getInstance().updateDefaultBrowserState_(statusString, |
| 337 isDefault, | 355 isDefault, |
| 338 canBeDefault); | 356 canBeDefault); |
| 339 } | 357 } |
| 340 }; | 358 }; |
| 341 | 359 |
| 342 BrowserOptions.updateSearchEngines = function(engines, defaultValue, | 360 BrowserOptions.updateSearchEngines = function(engines, defaultValue, |
| 343 defaultManaged) { | 361 defaultManaged) { |
| 344 BrowserOptions.getInstance().updateSearchEngines_(engines, defaultValue, | 362 BrowserOptions.getInstance().updateSearchEngines_(engines, defaultValue, |
| 345 defaultManaged); | 363 defaultManaged); |
| 346 }; | 364 }; |
| 347 | 365 |
| 348 BrowserOptions.updateStartupPages = function(pages) { | 366 BrowserOptions.updateStartupPages = function(pages) { |
| 349 BrowserOptions.getInstance().updateStartupPages_(pages); | 367 BrowserOptions.getInstance().updateStartupPages_(pages); |
| 350 }; | 368 }; |
| 351 | 369 |
| 352 BrowserOptions.updateAutocompleteSuggestions = function(suggestions) { | 370 BrowserOptions.updateAutocompleteSuggestions = function(suggestions) { |
| 353 BrowserOptions.getInstance().updateAutocompleteSuggestions_(suggestions); | 371 BrowserOptions.getInstance().updateAutocompleteSuggestions_(suggestions); |
| 354 }; | 372 }; |
| 355 | 373 |
| 374 BrowserOptions.updateAutoLaunchState = function(enabled) { |
| 375 BrowserOptions.getInstance().updateAutoLaunchState_(enabled); |
| 376 }; |
| 377 |
| 356 BrowserOptions.setInstantFieldTrialStatus = function(enabled) { | 378 BrowserOptions.setInstantFieldTrialStatus = function(enabled) { |
| 357 BrowserOptions.getInstance().setInstantFieldTrialStatus_(enabled); | 379 BrowserOptions.getInstance().setInstantFieldTrialStatus_(enabled); |
| 358 }; | 380 }; |
| 359 | 381 |
| 360 // Export | 382 // Export |
| 361 return { | 383 return { |
| 362 BrowserOptions: BrowserOptions | 384 BrowserOptions: BrowserOptions |
| 363 }; | 385 }; |
| 364 | 386 |
| 365 }); | 387 }); |
| OLD | NEW |