172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen// Use of this source code is governed by a BSD-style license that can be 321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen// found in the LICENSE file. 421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsenvar AddLanguageOverlay = options.AddLanguageOverlay; 621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar AdvancedOptions = options.AdvancedOptions; 721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar AlertOverlay = options.AlertOverlay; 8ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenvar AutofillEditAddressOverlay = options.AutofillEditAddressOverlay; 9ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenvar AutofillEditCreditCardOverlay = options.AutofillEditCreditCardOverlay; 10ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenvar AutofillOptions = options.AutofillOptions; 1121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar BrowserOptions = options.BrowserOptions; 1221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar ClearBrowserDataOverlay = options.ClearBrowserDataOverlay; 1321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar ContentSettings = options.ContentSettings; 1421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar ContentSettingsExceptionsArea = 1521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen options.contentSettings.ContentSettingsExceptionsArea; 1621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar CookiesView = options.CookiesView; 1721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar FontSettings = options.FontSettings; 1821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar ImportDataOverlay = options.ImportDataOverlay; 1921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar InstantConfirmOverlay = options.InstantConfirmOverlay; 2072a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsenvar LanguageOptions = options.LanguageOptions; 2121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar OptionsPage = options.OptionsPage; 2221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar PasswordManager = options.PasswordManager; 2321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar PersonalOptions = options.PersonalOptions; 2421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar Preferences = options.Preferences; 2521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar ProxyOptions = options.ProxyOptions; 2621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar SearchEngineManager = options.SearchEngineManager; 2721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenvar SearchPage = options.SearchPage; 28ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenvar SyncSetupOverlay = options.SyncSetupOverlay; 2921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 3021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen/** 3121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen * DOMContentLoaded handler, sets up the page. 3221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen */ 3321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenfunction load() { 3421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen // Decorate the existing elements in the document. 3521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen cr.ui.decorate('input[pref][type=checkbox]', options.PrefCheckbox); 3621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen cr.ui.decorate('input[pref][type=number]', options.PrefNumber); 3721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen cr.ui.decorate('input[pref][type=radio]', options.PrefRadio); 3821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen cr.ui.decorate('input[pref][type=range]', options.PrefRange); 3921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen cr.ui.decorate('select[pref]', options.PrefSelect); 4021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen cr.ui.decorate('input[pref][type=text]', options.PrefTextField); 4121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen cr.ui.decorate('input[pref][type=url]', options.PrefTextField); 423f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen cr.ui.decorate('#content-settings-page input[type=radio]', 4321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen options.ContentSettingsRadio); 4421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 4521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen var menuOffPattern = /(^\?|&)menu=off($|&)/; 4621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen var menuDisabled = menuOffPattern.test(window.location.search); 47dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // document.documentElement.setAttribute('hide-menu', menuDisabled); 48dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // We can't use an attribute on the html element because of webkit bug 49dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // 12519. Instead, we add a class. 50dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen if (menuDisabled) 51dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen document.documentElement.classList.add('hide-menu'); 5221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 5321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen localStrings = new LocalStrings(); 5421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 5521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.register(SearchPage.getInstance()); 5621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 5721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.register(BrowserOptions.getInstance()); 5821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage(SearchEngineManager.getInstance(), 5921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen BrowserOptions.getInstance(), 6021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('defaultSearchManageEnginesButton')]); 6121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.register(PersonalOptions.getInstance()); 62ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen OptionsPage.registerSubPage(AutofillOptions.getInstance(), 6321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen PersonalOptions.getInstance(), 6421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('autofill-settings')]); 6521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage(PasswordManager.getInstance(), 6621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen PersonalOptions.getInstance(), 6721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('manage-passwords')]); 6821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen if (cr.isChromeOS) { 6921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.register(SystemOptions.getInstance()); 7021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage(AboutPage.getInstance(), 7121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen SystemOptions.getInstance()); 7221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage(LanguageOptions.getInstance(), 7321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen SystemOptions.getInstance(), 7421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('language-button')]); 7521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage( 7621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen new OptionsPage('languageChewing', 7772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen templateData.languageChewingPageTabTitle, 7821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 'languageChewingPage'), 7972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen LanguageOptions.getInstance()); 8021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage( 8121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen new OptionsPage('languageHangul', 8272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen templateData.languageHangulPageTabTitle, 8321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 'languageHangulPage'), 8472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen LanguageOptions.getInstance()); 8521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage( 8621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen new OptionsPage('languageMozc', 8772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen templateData.languageMozcPageTabTitle, 8821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 'languageMozcPage'), 8972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen LanguageOptions.getInstance()); 9021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage( 9121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen new OptionsPage('languagePinyin', 9272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen templateData.languagePinyinPageTabTitle, 9321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 'languagePinyinPage'), 9472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen LanguageOptions.getInstance()); 9521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.register(InternetOptions.getInstance()); 9621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen } 9721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.register(AdvancedOptions.getInstance()); 9821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage(ContentSettings.getInstance(), 9921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen AdvancedOptions.getInstance(), 10021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('privacyContentSettingsButton')]); 10121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage(ContentSettingsExceptionsArea.getInstance(), 10221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen ContentSettings.getInstance()); 10321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage(CookiesView.getInstance(), 10421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen ContentSettings.getInstance(), 10521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('privacyContentSettingsButton'), 10621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen $('show-cookies-button')]); 10721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage(FontSettings.getInstance(), 10821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen AdvancedOptions.getInstance(), 10921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('fontSettingsCustomizeFontsButton')]); 11072a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (!cr.isChromeOS) { 11172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.registerSubPage(LanguageOptions.getInstance(), 11272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen AdvancedOptions.getInstance(), 11372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen [$('language-button')]); 11472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen } 11521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen if (!cr.isWindows && !cr.isMac) { 11621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage(CertificateManager.getInstance(), 11721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen AdvancedOptions.getInstance(), 11821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('show-cookies-button')]); 11972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.registerOverlay(CertificateRestoreOverlay.getInstance(), 12072a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen CertificateManager.getInstance()); 12172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.registerOverlay(CertificateBackupOverlay.getInstance(), 12272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen CertificateManager.getInstance()); 12372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.registerOverlay(CertificateEditCaTrustOverlay.getInstance(), 12472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen CertificateManager.getInstance()); 12572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.registerOverlay(CertificateImportErrorOverlay.getInstance(), 12672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen CertificateManager.getInstance()); 12721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen } 12872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.registerOverlay(AddLanguageOverlay.getInstance(), 12972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen LanguageOptions.getInstance()); 13021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerOverlay(AlertOverlay.getInstance()); 131ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen OptionsPage.registerOverlay(AutofillEditAddressOverlay.getInstance(), 132ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen AutofillOptions.getInstance()); 133ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen OptionsPage.registerOverlay(AutofillEditCreditCardOverlay.getInstance(), 134ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen AutofillOptions.getInstance()); 13521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerOverlay(ClearBrowserDataOverlay.getInstance(), 13672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen AdvancedOptions.getInstance(), 13721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('privacyClearDataButton')]); 13872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.registerOverlay(ImportDataOverlay.getInstance(), 13972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen PersonalOptions.getInstance()); 14072a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.registerOverlay(InstantConfirmOverlay.getInstance(), 14172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen BrowserOptions.getInstance()); 142ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen OptionsPage.registerOverlay(SyncSetupOverlay.getInstance(), 143ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen PersonalOptions.getInstance()); 14421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 14521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen if (cr.isChromeOS) { 14621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.register(AccountsOptions.getInstance()); 14721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerSubPage(ProxyOptions.getInstance(), 14821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen AdvancedOptions.getInstance(), 14921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('proxiesConfigureButton')]); 150ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen OptionsPage.registerSubPage(ChangePictureOptions.getInstance(), 151ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen PersonalOptions.getInstance(), 152ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen [$('change-picture-button')]); 15321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerOverlay(new OptionsPage('detailsInternetPage', 15421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 'detailsInternetPage', 15572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen 'detailsInternetPage'), 15672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen InternetOptions.getInstance()); 15721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 15821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen var languageModifierKeysOverlay = new OptionsPage( 15921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 'languageCustomizeModifierKeysOverlay', 16021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen localStrings.getString('languageCustomizeModifierKeysOverlay'), 16121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 'languageCustomizeModifierKeysOverlay') 16221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.registerOverlay(languageModifierKeysOverlay, 16372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen SystemOptions.getInstance(), 16421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [$('modifier-keys-button')]); 16521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen } 16621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 16721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen Preferences.getInstance().initialize(); 16821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.initialize(); 16921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 17021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen var path = document.location.pathname; 17121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 17221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen if (path.length > 1) { 17321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen var pageName = path.slice(1); 17472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen // Show page, but don't update history (there's already an entry for it). 17572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.showPageByName(pageName, false); 17621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen } else { 17772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.showDefaultPage(); 17821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen } 17921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 18021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen var subpagesNavTabs = document.querySelectorAll('.subpages-nav-tabs'); 18121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen for(var i = 0; i < subpagesNavTabs.length; i++) { 18221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen subpagesNavTabs[i].onclick = function(event) { 18321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen OptionsPage.showTab(event.srcElement); 18421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen } 18521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen } 18621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 18721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen // Allow platform specific CSS rules. 18821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen if (cr.isMac) 18921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen document.documentElement.setAttribute('os', 'mac'); 19072a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (cr.isWindows) 19172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen document.documentElement.setAttribute('os', 'windows'); 19272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (cr.isChromeOS) 19372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen document.documentElement.setAttribute('os', 'chromeos'); 19472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (cr.isLinux) { 19572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen document.documentElement.setAttribute('os', 'linux'); 19621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen document.documentElement.setAttribute('toolkit', 'gtk'); 19772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen } 19821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen if (cr.isViews) 19921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen document.documentElement.setAttribute('toolkit', 'views'); 200ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen if (navigator.plugins['Shockwave Flash']) 201ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen document.documentElement.setAttribute('hasFlashPlugin', ''); 20272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen 20372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen // Clicking on the Settings title brings up the 'Basics' page. 20472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('settings-title').onclick = function() { 20572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.navigateToPage(BrowserOptions.getInstance().name); 20672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen }; 20721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen} 20821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 20921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsendocument.addEventListener('DOMContentLoaded', load); 21021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 21121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsenwindow.onpopstate = function(e) { 21221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen options.OptionsPage.setState(e.state); 21321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen}; 214ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen 215ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenwindow.onbeforeunload = function() { 216ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen options.OptionsPage.willClose(); 217ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen}; 218