Chromium Code Reviews| Index: chrome/browser/resources/settings/route.js |
| diff --git a/chrome/browser/resources/settings/route.js b/chrome/browser/resources/settings/route.js |
| index 1d3496baa53825bda5d9738a01697bc316a2b2bb..61acd8e655868675171e113e59974a42b946d4d1 100644 |
| --- a/chrome/browser/resources/settings/route.js |
| +++ b/chrome/browser/resources/settings/route.js |
| @@ -96,7 +96,6 @@ cr.define('settings', function() { |
| // Root pages. |
| r.BASIC = new Route('/'); |
| - r.ADVANCED = new Route('/advanced'); |
| r.ABOUT = new Route('/help'); |
| // Navigable dialogs. These are the only non-section children of root pages. |
| @@ -105,13 +104,6 @@ cr.define('settings', function() { |
| r.IMPORT_DATA.isNavigableDialog = true; |
| r.SIGN_OUT = r.BASIC.createChild('/signOut'); |
| r.SIGN_OUT.isNavigableDialog = true; |
| - r.CLEAR_BROWSER_DATA = r.ADVANCED.createChild('/clearBrowserData'); |
| - r.CLEAR_BROWSER_DATA.isNavigableDialog = true; |
| - r.RESET_DIALOG = r.ADVANCED.createChild('/resetProfileSettings'); |
| - r.RESET_DIALOG.isNavigableDialog = true; |
| - r.TRIGGERED_RESET_DIALOG = |
| - r.ADVANCED.createChild('/triggeredResetProfileSettings'); |
| - r.TRIGGERED_RESET_DIALOG.isNavigableDialog = true; |
| // <if expr="chromeos"> |
| r.INTERNET = r.BASIC.createSection('/internet', 'internet'); |
| @@ -123,11 +115,15 @@ cr.define('settings', function() { |
| r.BLUETOOTH_DEVICES = r.BLUETOOTH.createChild('/bluetoothDevices'); |
| // </if> |
| - r.APPEARANCE = r.BASIC.createSection('/appearance', 'appearance'); |
| - r.FONTS = r.APPEARANCE.createChild('/fonts'); |
| + if (settings.pageVisibility.appearance !== false) { |
|
dpapad
2017/06/29 00:57:32
Can we add some tests at https://cs.chromium.org/c
scottchen
2017/07/06 01:02:24
Done.
|
| + r.APPEARANCE = r.BASIC.createSection('/appearance', 'appearance'); |
| + r.FONTS = r.APPEARANCE.createChild('/fonts'); |
| + } |
| - r.DEFAULT_BROWSER = |
| - r.BASIC.createSection('/defaultBrowser', 'defaultBrowser'); |
| + if (settings.pageVisibility.defaultBrowser !== false) { |
| + r.DEFAULT_BROWSER = |
| + r.BASIC.createSection('/defaultBrowser', 'defaultBrowser'); |
| + } |
| r.SEARCH = r.BASIC.createSection('/search', 'search'); |
| r.SEARCH_ENGINES = r.SEARCH.createChild('/searchEngines'); |
| @@ -137,19 +133,25 @@ cr.define('settings', function() { |
| r.ANDROID_APPS_DETAILS = r.ANDROID_APPS.createChild('/androidApps/details'); |
| // </if> |
| - r.ON_STARTUP = r.BASIC.createSection('/onStartup', 'onStartup'); |
| + if (settings.pageVisibility.onStartup !== false) { |
| + r.ON_STARTUP = r.BASIC.createSection('/onStartup', 'onStartup'); |
| + } |
| - r.PEOPLE = r.BASIC.createSection('/people', 'people'); |
| - r.SYNC = r.PEOPLE.createChild('/syncSetup'); |
| - // <if expr="not chromeos"> |
| - r.MANAGE_PROFILE = r.PEOPLE.createChild('/manageProfile'); |
| - // </if> |
| - // <if expr="chromeos"> |
| - r.CHANGE_PICTURE = r.PEOPLE.createChild('/changePicture'); |
| - r.ACCOUNTS = r.PEOPLE.createChild('/accounts'); |
| - r.LOCK_SCREEN = r.PEOPLE.createChild('/lockScreen'); |
| - r.FINGERPRINT = r.LOCK_SCREEN.createChild('/lockScreen/fingerprint'); |
| + if (settings.pageVisibility.people !== false) { |
| + r.PEOPLE = r.BASIC.createSection('/people', 'people'); |
| + r.SYNC = r.PEOPLE.createChild('/syncSetup'); |
| + // <if expr="not chromeos"> |
| + r.MANAGE_PROFILE = r.PEOPLE.createChild('/manageProfile'); |
| + // </if> |
| + // <if expr="chromeos"> |
| + r.CHANGE_PICTURE = r.PEOPLE.createChild('/changePicture'); |
| + r.ACCOUNTS = r.PEOPLE.createChild('/accounts'); |
| + r.LOCK_SCREEN = r.PEOPLE.createChild('/lockScreen'); |
| + r.FINGERPRINT = r.LOCK_SCREEN.createChild('/lockScreen/fingerprint'); |
| + // </if> |
| + } |
| + // <if expr="chromeos"> |
| r.DEVICE = r.BASIC.createSection('/device', 'device'); |
| r.POINTERS = r.DEVICE.createChild('/pointer-overlay'); |
| r.KEYBOARD = r.DEVICE.createChild('/keyboard-overlay'); |
| @@ -159,84 +161,109 @@ cr.define('settings', function() { |
| r.POWER = r.DEVICE.createChild('/power'); |
| // </if> |
| - r.PRIVACY = r.ADVANCED.createSection('/privacy', 'privacy'); |
| - r.CERTIFICATES = r.PRIVACY.createChild('/certificates'); |
| - |
| - r.SITE_SETTINGS = r.PRIVACY.createChild('/content'); |
| - |
| - if (loadTimeData.getBoolean('enableSiteSettings')) { |
| - r.SITE_SETTINGS_ALL = r.SITE_SETTINGS.createChild('all'); |
| - r.SITE_SETTINGS_SITE_DETAILS = |
| - r.SITE_SETTINGS_ALL.createChild('/content/siteDetails'); |
| - } else if (loadTimeData.getBoolean('enableSiteDetails')) { |
| - // When there is no "All Sites", pressing 'back' from "Site Details" should |
| - // return to "Content Settings". This should only occur when |kSiteSettings| |
| - // is off and |kSiteDetails| is on. |
| - r.SITE_SETTINGS_SITE_DETAILS = |
| - r.SITE_SETTINGS.createChild('/content/siteDetails'); |
| - } |
| + // Advacned Routes |
| + if (settings.pageVisibility.advancedSettings !== false) { |
| + r.ADVANCED = new Route('/advanced'); |
| - r.SITE_SETTINGS_HANDLERS = r.SITE_SETTINGS.createChild('/handlers'); |
| - |
| - // TODO(tommycli): Find a way to refactor these repetitive category routes. |
| - r.SITE_SETTINGS_ADS = r.SITE_SETTINGS.createChild('ads'); |
| - r.SITE_SETTINGS_AUTOMATIC_DOWNLOADS = |
| - r.SITE_SETTINGS.createChild('automaticDownloads'); |
| - r.SITE_SETTINGS_BACKGROUND_SYNC = |
| - r.SITE_SETTINGS.createChild('backgroundSync'); |
| - r.SITE_SETTINGS_CAMERA = r.SITE_SETTINGS.createChild('camera'); |
| - r.SITE_SETTINGS_COOKIES = r.SITE_SETTINGS.createChild('cookies'); |
| - r.SITE_SETTINGS_DATA_DETAILS = |
| - r.SITE_SETTINGS_COOKIES.createChild('/cookies/detail'); |
| - r.SITE_SETTINGS_IMAGES = r.SITE_SETTINGS.createChild('images'); |
| - r.SITE_SETTINGS_JAVASCRIPT = r.SITE_SETTINGS.createChild('javascript'); |
| - r.SITE_SETTINGS_LOCATION = r.SITE_SETTINGS.createChild('location'); |
| - r.SITE_SETTINGS_MICROPHONE = r.SITE_SETTINGS.createChild('microphone'); |
| - r.SITE_SETTINGS_NOTIFICATIONS = r.SITE_SETTINGS.createChild('notifications'); |
| - r.SITE_SETTINGS_FLASH = r.SITE_SETTINGS.createChild('flash'); |
| - r.SITE_SETTINGS_POPUPS = r.SITE_SETTINGS.createChild('popups'); |
| - r.SITE_SETTINGS_UNSANDBOXED_PLUGINS = |
| - r.SITE_SETTINGS.createChild('unsandboxedPlugins'); |
| - r.SITE_SETTINGS_MIDI_DEVICES = r.SITE_SETTINGS.createChild('midiDevices'); |
| - r.SITE_SETTINGS_USB_DEVICES = r.SITE_SETTINGS.createChild('usbDevices'); |
| - r.SITE_SETTINGS_ZOOM_LEVELS = r.SITE_SETTINGS.createChild('zoomLevels'); |
| - r.SITE_SETTINGS_PDF_DOCUMENTS = r.SITE_SETTINGS.createChild('pdfDocuments'); |
| - r.SITE_SETTINGS_PROTECTED_CONTENT = |
| - r.SITE_SETTINGS.createChild('protectedContent'); |
| + r.CLEAR_BROWSER_DATA = r.ADVANCED.createChild('/clearBrowserData'); |
| + r.CLEAR_BROWSER_DATA.isNavigableDialog = true; |
| - // <if expr="chromeos"> |
| - r.DATETIME = r.ADVANCED.createSection('/dateTime', 'dateTime'); |
| - // </if> |
| + if (settings.pageVisibility.privacy !== false) { |
| + r.PRIVACY = r.ADVANCED.createSection('/privacy', 'privacy'); |
| + r.CERTIFICATES = r.PRIVACY.createChild('/certificates'); |
| + r.SITE_SETTINGS = r.PRIVACY.createChild('/content'); |
| + } |
| - r.PASSWORDS = |
| - r.ADVANCED.createSection('/passwordsAndForms', 'passwordsAndForms'); |
| - r.AUTOFILL = r.PASSWORDS.createChild('/autofill'); |
| - r.MANAGE_PASSWORDS = r.PASSWORDS.createChild('/passwords'); |
| + if (loadTimeData.getBoolean('enableSiteSettings')) { |
| + r.SITE_SETTINGS_ALL = r.SITE_SETTINGS.createChild('all'); |
| + r.SITE_SETTINGS_SITE_DETAILS = |
| + r.SITE_SETTINGS_ALL.createChild('/content/siteDetails'); |
| + } else if (loadTimeData.getBoolean('enableSiteDetails')) { |
| + // When there is no "All Sites", pressing 'back' from "Site Details" |
| + // should return to "Content Settings". This should only occur when |
| + // |kSiteSettings| is off and |kSiteDetails| is on. |
| + r.SITE_SETTINGS_SITE_DETAILS = |
| + r.SITE_SETTINGS.createChild('/content/siteDetails'); |
| + } |
| - r.LANGUAGES = r.ADVANCED.createSection('/languages', 'languages'); |
| - // <if expr="chromeos"> |
| - r.INPUT_METHODS = r.LANGUAGES.createChild('/inputMethods'); |
| - // </if> |
| - // <if expr="not is_macosx"> |
| - r.EDIT_DICTIONARY = r.LANGUAGES.createChild('/editDictionary'); |
| - // </if> |
| + r.SITE_SETTINGS_HANDLERS = r.SITE_SETTINGS.createChild('/handlers'); |
| + |
| + // TODO(tommycli): Find a way to refactor these repetitive category routes. |
| + r.SITE_SETTINGS_ADS = r.SITE_SETTINGS.createChild('ads'); |
| + r.SITE_SETTINGS_AUTOMATIC_DOWNLOADS = |
| + r.SITE_SETTINGS.createChild('automaticDownloads'); |
| + r.SITE_SETTINGS_BACKGROUND_SYNC = |
| + r.SITE_SETTINGS.createChild('backgroundSync'); |
| + r.SITE_SETTINGS_CAMERA = r.SITE_SETTINGS.createChild('camera'); |
| + r.SITE_SETTINGS_COOKIES = r.SITE_SETTINGS.createChild('cookies'); |
| + r.SITE_SETTINGS_DATA_DETAILS = |
| + r.SITE_SETTINGS_COOKIES.createChild('/cookies/detail'); |
| + r.SITE_SETTINGS_IMAGES = r.SITE_SETTINGS.createChild('images'); |
| + r.SITE_SETTINGS_JAVASCRIPT = r.SITE_SETTINGS.createChild('javascript'); |
| + r.SITE_SETTINGS_LOCATION = r.SITE_SETTINGS.createChild('location'); |
| + r.SITE_SETTINGS_MICROPHONE = r.SITE_SETTINGS.createChild('microphone'); |
| + r.SITE_SETTINGS_NOTIFICATIONS = |
| + r.SITE_SETTINGS.createChild('notifications'); |
| + r.SITE_SETTINGS_FLASH = r.SITE_SETTINGS.createChild('flash'); |
| + r.SITE_SETTINGS_POPUPS = r.SITE_SETTINGS.createChild('popups'); |
| + r.SITE_SETTINGS_UNSANDBOXED_PLUGINS = |
| + r.SITE_SETTINGS.createChild('unsandboxedPlugins'); |
| + r.SITE_SETTINGS_MIDI_DEVICES = r.SITE_SETTINGS.createChild('midiDevices'); |
| + r.SITE_SETTINGS_USB_DEVICES = r.SITE_SETTINGS.createChild('usbDevices'); |
| + r.SITE_SETTINGS_ZOOM_LEVELS = r.SITE_SETTINGS.createChild('zoomLevels'); |
| + r.SITE_SETTINGS_PDF_DOCUMENTS = r.SITE_SETTINGS.createChild('pdfDocuments'); |
| + r.SITE_SETTINGS_PROTECTED_CONTENT = |
| + r.SITE_SETTINGS.createChild('protectedContent'); |
| + |
| + // <if expr="chromeos"> |
| + if (settings.pageVisibility.dateTime !== false) { |
| + r.DATETIME = r.ADVANCED.createSection('/dateTime', 'dateTime'); |
| + } |
| + // </if> |
| - r.DOWNLOADS = r.ADVANCED.createSection('/downloads', 'downloads'); |
| + if (settings.pageVisibility.passwordsAndForms !== false) { |
| + r.PASSWORDS = |
| + r.ADVANCED.createSection('/passwordsAndForms', 'passwordsAndForms'); |
| + r.AUTOFILL = r.PASSWORDS.createChild('/autofill'); |
| + r.MANAGE_PASSWORDS = r.PASSWORDS.createChild('/passwords'); |
| + } |
| - r.PRINTING = r.ADVANCED.createSection('/printing', 'printing'); |
| - r.CLOUD_PRINTERS = r.PRINTING.createChild('/cloudPrinters'); |
| - // <if expr="chromeos"> |
| - r.CUPS_PRINTERS = r.PRINTING.createChild('/cupsPrinters'); |
| - r.CUPS_PRINTER_DETAIL = r.CUPS_PRINTERS.createChild('/cupsPrinterDetails'); |
| - // </if> |
| + r.LANGUAGES = r.ADVANCED.createSection('/languages', 'languages'); |
| + // <if expr="chromeos"> |
| + r.INPUT_METHODS = r.LANGUAGES.createChild('/inputMethods'); |
| + // </if> |
| + // <if expr="not is_macosx"> |
| + r.EDIT_DICTIONARY = r.LANGUAGES.createChild('/editDictionary'); |
| + // </if> |
| - r.ACCESSIBILITY = r.ADVANCED.createSection('/accessibility', 'a11y'); |
| - // <if expr="chromeos"> |
| - r.MANAGE_ACCESSIBILITY = r.ACCESSIBILITY.createChild('/manageAccessibility'); |
| - // </if> |
| + if (settings.pageVisibility.downloads !== false) { |
| + r.DOWNLOADS = r.ADVANCED.createSection('/downloads', 'downloads'); |
| + } |
| - r.SYSTEM = r.ADVANCED.createSection('/system', 'system'); |
| - r.RESET = r.ADVANCED.createSection('/reset', 'reset'); |
| + r.PRINTING = r.ADVANCED.createSection('/printing', 'printing'); |
| + r.CLOUD_PRINTERS = r.PRINTING.createChild('/cloudPrinters'); |
| + // <if expr="chromeos"> |
| + r.CUPS_PRINTERS = r.PRINTING.createChild('/cupsPrinters'); |
| + r.CUPS_PRINTER_DETAIL = r.CUPS_PRINTERS.createChild('/cupsPrinterDetails'); |
| + // </if> |
| + |
| + r.ACCESSIBILITY = r.ADVANCED.createSection('/accessibility', 'a11y'); |
| + // <if expr="chromeos"> |
| + r.MANAGE_ACCESSIBILITY = |
| + r.ACCESSIBILITY.createChild('/manageAccessibility'); |
| + // </if> |
| + |
| + r.SYSTEM = r.ADVANCED.createSection('/system', 'system'); |
| + |
| + if (settings.pageVisibility.reset !== false) { |
| + r.RESET = r.ADVANCED.createSection('/reset', 'reset'); |
| + r.RESET_DIALOG = r.ADVANCED.createChild('/resetProfileSettings'); |
| + r.RESET_DIALOG.isNavigableDialog = true; |
| + r.TRIGGERED_RESET_DIALOG = |
| + r.ADVANCED.createChild('/triggeredResetProfileSettings'); |
| + r.TRIGGERED_RESET_DIALOG.isNavigableDialog = true; |
| + } |
| + } |
| // <if expr="chromeos"> |
| // "About" is the only section in About, but we still need to create the route |