Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(161)

Side by Side Diff: chrome/browser/resources/settings/route.js

Issue 2957153003: MD Settings: remove unsupported routes from guest-mode. (Closed)
Patch Set: fix compile error Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chrome/browser/resources/settings/page_visibility.js ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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('settings', function() { 5 cr.define('settings', function() {
6 /** 6 /**
7 * Class for navigable routes. May only be instantiated within this file. 7 * Class for navigable routes. May only be instantiated within this file.
8 * @constructor 8 * @constructor
9 * @param {string} path 9 * @param {string} path
10 * @private 10 * @private
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 return !!this.parent && !!this.section && 89 return !!this.parent && !!this.section &&
90 this.parent.section == this.section; 90 this.parent.section == this.section;
91 }, 91 },
92 }; 92 };
93 93
94 // Abbreviated variable for easier definitions. 94 // Abbreviated variable for easier definitions.
95 var r = Route; 95 var r = Route;
96 96
97 // Root pages. 97 // Root pages.
98 r.BASIC = new Route('/'); 98 r.BASIC = new Route('/');
99 r.ADVANCED = new Route('/advanced');
100 r.ABOUT = new Route('/help'); 99 r.ABOUT = new Route('/help');
101 100
102 // Navigable dialogs. These are the only non-section children of root pages. 101 // Navigable dialogs. These are the only non-section children of root pages.
103 // These are disfavored. If we add anymore, we should add explicit support. 102 // These are disfavored. If we add anymore, we should add explicit support.
104 r.IMPORT_DATA = r.BASIC.createChild('/importData'); 103 r.IMPORT_DATA = r.BASIC.createChild('/importData');
105 r.IMPORT_DATA.isNavigableDialog = true; 104 r.IMPORT_DATA.isNavigableDialog = true;
106 r.SIGN_OUT = r.BASIC.createChild('/signOut'); 105 r.SIGN_OUT = r.BASIC.createChild('/signOut');
107 r.SIGN_OUT.isNavigableDialog = true; 106 r.SIGN_OUT.isNavigableDialog = true;
108 r.CLEAR_BROWSER_DATA = r.ADVANCED.createChild('/clearBrowserData');
109 r.CLEAR_BROWSER_DATA.isNavigableDialog = true;
110 r.RESET_DIALOG = r.ADVANCED.createChild('/resetProfileSettings');
111 r.RESET_DIALOG.isNavigableDialog = true;
112 r.TRIGGERED_RESET_DIALOG =
113 r.ADVANCED.createChild('/triggeredResetProfileSettings');
114 r.TRIGGERED_RESET_DIALOG.isNavigableDialog = true;
115 107
116 // <if expr="chromeos"> 108 // <if expr="chromeos">
117 r.INTERNET = r.BASIC.createSection('/internet', 'internet'); 109 r.INTERNET = r.BASIC.createSection('/internet', 'internet');
118 r.INTERNET_NETWORKS = r.INTERNET.createChild('/networks'); 110 r.INTERNET_NETWORKS = r.INTERNET.createChild('/networks');
119 r.NETWORK_CONFIG = r.INTERNET.createChild('/networkConfig'); 111 r.NETWORK_CONFIG = r.INTERNET.createChild('/networkConfig');
120 r.NETWORK_DETAIL = r.INTERNET.createChild('/networkDetail'); 112 r.NETWORK_DETAIL = r.INTERNET.createChild('/networkDetail');
121 r.KNOWN_NETWORKS = r.INTERNET.createChild('/knownNetworks'); 113 r.KNOWN_NETWORKS = r.INTERNET.createChild('/knownNetworks');
122 r.BLUETOOTH = r.BASIC.createSection('/bluetooth', 'bluetooth'); 114 r.BLUETOOTH = r.BASIC.createSection('/bluetooth', 'bluetooth');
123 r.BLUETOOTH_DEVICES = r.BLUETOOTH.createChild('/bluetoothDevices'); 115 r.BLUETOOTH_DEVICES = r.BLUETOOTH.createChild('/bluetoothDevices');
124 // </if> 116 // </if>
125 117
126 r.APPEARANCE = r.BASIC.createSection('/appearance', 'appearance'); 118 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.
127 r.FONTS = r.APPEARANCE.createChild('/fonts'); 119 r.APPEARANCE = r.BASIC.createSection('/appearance', 'appearance');
120 r.FONTS = r.APPEARANCE.createChild('/fonts');
121 }
128 122
129 r.DEFAULT_BROWSER = 123 if (settings.pageVisibility.defaultBrowser !== false) {
130 r.BASIC.createSection('/defaultBrowser', 'defaultBrowser'); 124 r.DEFAULT_BROWSER =
125 r.BASIC.createSection('/defaultBrowser', 'defaultBrowser');
126 }
131 127
132 r.SEARCH = r.BASIC.createSection('/search', 'search'); 128 r.SEARCH = r.BASIC.createSection('/search', 'search');
133 r.SEARCH_ENGINES = r.SEARCH.createChild('/searchEngines'); 129 r.SEARCH_ENGINES = r.SEARCH.createChild('/searchEngines');
134 130
135 // <if expr="chromeos"> 131 // <if expr="chromeos">
136 r.ANDROID_APPS = r.BASIC.createSection('/androidApps', 'androidApps'); 132 r.ANDROID_APPS = r.BASIC.createSection('/androidApps', 'androidApps');
137 r.ANDROID_APPS_DETAILS = r.ANDROID_APPS.createChild('/androidApps/details'); 133 r.ANDROID_APPS_DETAILS = r.ANDROID_APPS.createChild('/androidApps/details');
138 // </if> 134 // </if>
139 135
140 r.ON_STARTUP = r.BASIC.createSection('/onStartup', 'onStartup'); 136 if (settings.pageVisibility.onStartup !== false) {
137 r.ON_STARTUP = r.BASIC.createSection('/onStartup', 'onStartup');
138 }
141 139
142 r.PEOPLE = r.BASIC.createSection('/people', 'people'); 140 if (settings.pageVisibility.people !== false) {
143 r.SYNC = r.PEOPLE.createChild('/syncSetup'); 141 r.PEOPLE = r.BASIC.createSection('/people', 'people');
144 // <if expr="not chromeos"> 142 r.SYNC = r.PEOPLE.createChild('/syncSetup');
145 r.MANAGE_PROFILE = r.PEOPLE.createChild('/manageProfile'); 143 // <if expr="not chromeos">
146 // </if> 144 r.MANAGE_PROFILE = r.PEOPLE.createChild('/manageProfile');
145 // </if>
146 // <if expr="chromeos">
147 r.CHANGE_PICTURE = r.PEOPLE.createChild('/changePicture');
148 r.ACCOUNTS = r.PEOPLE.createChild('/accounts');
149 r.LOCK_SCREEN = r.PEOPLE.createChild('/lockScreen');
150 r.FINGERPRINT = r.LOCK_SCREEN.createChild('/lockScreen/fingerprint');
151 // </if>
152 }
153
147 // <if expr="chromeos"> 154 // <if expr="chromeos">
148 r.CHANGE_PICTURE = r.PEOPLE.createChild('/changePicture');
149 r.ACCOUNTS = r.PEOPLE.createChild('/accounts');
150 r.LOCK_SCREEN = r.PEOPLE.createChild('/lockScreen');
151 r.FINGERPRINT = r.LOCK_SCREEN.createChild('/lockScreen/fingerprint');
152
153 r.DEVICE = r.BASIC.createSection('/device', 'device'); 155 r.DEVICE = r.BASIC.createSection('/device', 'device');
154 r.POINTERS = r.DEVICE.createChild('/pointer-overlay'); 156 r.POINTERS = r.DEVICE.createChild('/pointer-overlay');
155 r.KEYBOARD = r.DEVICE.createChild('/keyboard-overlay'); 157 r.KEYBOARD = r.DEVICE.createChild('/keyboard-overlay');
156 r.STYLUS = r.DEVICE.createChild('/stylus'); 158 r.STYLUS = r.DEVICE.createChild('/stylus');
157 r.DISPLAY = r.DEVICE.createChild('/display'); 159 r.DISPLAY = r.DEVICE.createChild('/display');
158 r.STORAGE = r.DEVICE.createChild('/storage'); 160 r.STORAGE = r.DEVICE.createChild('/storage');
159 r.POWER = r.DEVICE.createChild('/power'); 161 r.POWER = r.DEVICE.createChild('/power');
160 // </if> 162 // </if>
161 163
162 r.PRIVACY = r.ADVANCED.createSection('/privacy', 'privacy'); 164 // Advacned Routes
163 r.CERTIFICATES = r.PRIVACY.createChild('/certificates'); 165 if (settings.pageVisibility.advancedSettings !== false) {
166 r.ADVANCED = new Route('/advanced');
164 167
165 r.SITE_SETTINGS = r.PRIVACY.createChild('/content'); 168 r.CLEAR_BROWSER_DATA = r.ADVANCED.createChild('/clearBrowserData');
169 r.CLEAR_BROWSER_DATA.isNavigableDialog = true;
166 170
167 if (loadTimeData.getBoolean('enableSiteSettings')) { 171 if (settings.pageVisibility.privacy !== false) {
168 r.SITE_SETTINGS_ALL = r.SITE_SETTINGS.createChild('all'); 172 r.PRIVACY = r.ADVANCED.createSection('/privacy', 'privacy');
169 r.SITE_SETTINGS_SITE_DETAILS = 173 r.CERTIFICATES = r.PRIVACY.createChild('/certificates');
170 r.SITE_SETTINGS_ALL.createChild('/content/siteDetails'); 174 r.SITE_SETTINGS = r.PRIVACY.createChild('/content');
171 } else if (loadTimeData.getBoolean('enableSiteDetails')) { 175 }
172 // When there is no "All Sites", pressing 'back' from "Site Details" should 176
173 // return to "Content Settings". This should only occur when |kSiteSettings| 177 if (loadTimeData.getBoolean('enableSiteSettings')) {
174 // is off and |kSiteDetails| is on. 178 r.SITE_SETTINGS_ALL = r.SITE_SETTINGS.createChild('all');
175 r.SITE_SETTINGS_SITE_DETAILS = 179 r.SITE_SETTINGS_SITE_DETAILS =
176 r.SITE_SETTINGS.createChild('/content/siteDetails'); 180 r.SITE_SETTINGS_ALL.createChild('/content/siteDetails');
181 } else if (loadTimeData.getBoolean('enableSiteDetails')) {
182 // When there is no "All Sites", pressing 'back' from "Site Details"
183 // should return to "Content Settings". This should only occur when
184 // |kSiteSettings| is off and |kSiteDetails| is on.
185 r.SITE_SETTINGS_SITE_DETAILS =
186 r.SITE_SETTINGS.createChild('/content/siteDetails');
187 }
188
189 r.SITE_SETTINGS_HANDLERS = r.SITE_SETTINGS.createChild('/handlers');
190
191 // TODO(tommycli): Find a way to refactor these repetitive category routes.
192 r.SITE_SETTINGS_ADS = r.SITE_SETTINGS.createChild('ads');
193 r.SITE_SETTINGS_AUTOMATIC_DOWNLOADS =
194 r.SITE_SETTINGS.createChild('automaticDownloads');
195 r.SITE_SETTINGS_BACKGROUND_SYNC =
196 r.SITE_SETTINGS.createChild('backgroundSync');
197 r.SITE_SETTINGS_CAMERA = r.SITE_SETTINGS.createChild('camera');
198 r.SITE_SETTINGS_COOKIES = r.SITE_SETTINGS.createChild('cookies');
199 r.SITE_SETTINGS_DATA_DETAILS =
200 r.SITE_SETTINGS_COOKIES.createChild('/cookies/detail');
201 r.SITE_SETTINGS_IMAGES = r.SITE_SETTINGS.createChild('images');
202 r.SITE_SETTINGS_JAVASCRIPT = r.SITE_SETTINGS.createChild('javascript');
203 r.SITE_SETTINGS_LOCATION = r.SITE_SETTINGS.createChild('location');
204 r.SITE_SETTINGS_MICROPHONE = r.SITE_SETTINGS.createChild('microphone');
205 r.SITE_SETTINGS_NOTIFICATIONS =
206 r.SITE_SETTINGS.createChild('notifications');
207 r.SITE_SETTINGS_FLASH = r.SITE_SETTINGS.createChild('flash');
208 r.SITE_SETTINGS_POPUPS = r.SITE_SETTINGS.createChild('popups');
209 r.SITE_SETTINGS_UNSANDBOXED_PLUGINS =
210 r.SITE_SETTINGS.createChild('unsandboxedPlugins');
211 r.SITE_SETTINGS_MIDI_DEVICES = r.SITE_SETTINGS.createChild('midiDevices');
212 r.SITE_SETTINGS_USB_DEVICES = r.SITE_SETTINGS.createChild('usbDevices');
213 r.SITE_SETTINGS_ZOOM_LEVELS = r.SITE_SETTINGS.createChild('zoomLevels');
214 r.SITE_SETTINGS_PDF_DOCUMENTS = r.SITE_SETTINGS.createChild('pdfDocuments');
215 r.SITE_SETTINGS_PROTECTED_CONTENT =
216 r.SITE_SETTINGS.createChild('protectedContent');
217
218 // <if expr="chromeos">
219 if (settings.pageVisibility.dateTime !== false) {
220 r.DATETIME = r.ADVANCED.createSection('/dateTime', 'dateTime');
221 }
222 // </if>
223
224 if (settings.pageVisibility.passwordsAndForms !== false) {
225 r.PASSWORDS =
226 r.ADVANCED.createSection('/passwordsAndForms', 'passwordsAndForms');
227 r.AUTOFILL = r.PASSWORDS.createChild('/autofill');
228 r.MANAGE_PASSWORDS = r.PASSWORDS.createChild('/passwords');
229 }
230
231 r.LANGUAGES = r.ADVANCED.createSection('/languages', 'languages');
232 // <if expr="chromeos">
233 r.INPUT_METHODS = r.LANGUAGES.createChild('/inputMethods');
234 // </if>
235 // <if expr="not is_macosx">
236 r.EDIT_DICTIONARY = r.LANGUAGES.createChild('/editDictionary');
237 // </if>
238
239 if (settings.pageVisibility.downloads !== false) {
240 r.DOWNLOADS = r.ADVANCED.createSection('/downloads', 'downloads');
241 }
242
243 r.PRINTING = r.ADVANCED.createSection('/printing', 'printing');
244 r.CLOUD_PRINTERS = r.PRINTING.createChild('/cloudPrinters');
245 // <if expr="chromeos">
246 r.CUPS_PRINTERS = r.PRINTING.createChild('/cupsPrinters');
247 r.CUPS_PRINTER_DETAIL = r.CUPS_PRINTERS.createChild('/cupsPrinterDetails');
248 // </if>
249
250 r.ACCESSIBILITY = r.ADVANCED.createSection('/accessibility', 'a11y');
251 // <if expr="chromeos">
252 r.MANAGE_ACCESSIBILITY =
253 r.ACCESSIBILITY.createChild('/manageAccessibility');
254 // </if>
255
256 r.SYSTEM = r.ADVANCED.createSection('/system', 'system');
257
258 if (settings.pageVisibility.reset !== false) {
259 r.RESET = r.ADVANCED.createSection('/reset', 'reset');
260 r.RESET_DIALOG = r.ADVANCED.createChild('/resetProfileSettings');
261 r.RESET_DIALOG.isNavigableDialog = true;
262 r.TRIGGERED_RESET_DIALOG =
263 r.ADVANCED.createChild('/triggeredResetProfileSettings');
264 r.TRIGGERED_RESET_DIALOG.isNavigableDialog = true;
265 }
177 } 266 }
178 267
179 r.SITE_SETTINGS_HANDLERS = r.SITE_SETTINGS.createChild('/handlers');
180
181 // TODO(tommycli): Find a way to refactor these repetitive category routes.
182 r.SITE_SETTINGS_ADS = r.SITE_SETTINGS.createChild('ads');
183 r.SITE_SETTINGS_AUTOMATIC_DOWNLOADS =
184 r.SITE_SETTINGS.createChild('automaticDownloads');
185 r.SITE_SETTINGS_BACKGROUND_SYNC =
186 r.SITE_SETTINGS.createChild('backgroundSync');
187 r.SITE_SETTINGS_CAMERA = r.SITE_SETTINGS.createChild('camera');
188 r.SITE_SETTINGS_COOKIES = r.SITE_SETTINGS.createChild('cookies');
189 r.SITE_SETTINGS_DATA_DETAILS =
190 r.SITE_SETTINGS_COOKIES.createChild('/cookies/detail');
191 r.SITE_SETTINGS_IMAGES = r.SITE_SETTINGS.createChild('images');
192 r.SITE_SETTINGS_JAVASCRIPT = r.SITE_SETTINGS.createChild('javascript');
193 r.SITE_SETTINGS_LOCATION = r.SITE_SETTINGS.createChild('location');
194 r.SITE_SETTINGS_MICROPHONE = r.SITE_SETTINGS.createChild('microphone');
195 r.SITE_SETTINGS_NOTIFICATIONS = r.SITE_SETTINGS.createChild('notifications');
196 r.SITE_SETTINGS_FLASH = r.SITE_SETTINGS.createChild('flash');
197 r.SITE_SETTINGS_POPUPS = r.SITE_SETTINGS.createChild('popups');
198 r.SITE_SETTINGS_UNSANDBOXED_PLUGINS =
199 r.SITE_SETTINGS.createChild('unsandboxedPlugins');
200 r.SITE_SETTINGS_MIDI_DEVICES = r.SITE_SETTINGS.createChild('midiDevices');
201 r.SITE_SETTINGS_USB_DEVICES = r.SITE_SETTINGS.createChild('usbDevices');
202 r.SITE_SETTINGS_ZOOM_LEVELS = r.SITE_SETTINGS.createChild('zoomLevels');
203 r.SITE_SETTINGS_PDF_DOCUMENTS = r.SITE_SETTINGS.createChild('pdfDocuments');
204 r.SITE_SETTINGS_PROTECTED_CONTENT =
205 r.SITE_SETTINGS.createChild('protectedContent');
206
207 // <if expr="chromeos">
208 r.DATETIME = r.ADVANCED.createSection('/dateTime', 'dateTime');
209 // </if>
210
211 r.PASSWORDS =
212 r.ADVANCED.createSection('/passwordsAndForms', 'passwordsAndForms');
213 r.AUTOFILL = r.PASSWORDS.createChild('/autofill');
214 r.MANAGE_PASSWORDS = r.PASSWORDS.createChild('/passwords');
215
216 r.LANGUAGES = r.ADVANCED.createSection('/languages', 'languages');
217 // <if expr="chromeos">
218 r.INPUT_METHODS = r.LANGUAGES.createChild('/inputMethods');
219 // </if>
220 // <if expr="not is_macosx">
221 r.EDIT_DICTIONARY = r.LANGUAGES.createChild('/editDictionary');
222 // </if>
223
224 r.DOWNLOADS = r.ADVANCED.createSection('/downloads', 'downloads');
225
226 r.PRINTING = r.ADVANCED.createSection('/printing', 'printing');
227 r.CLOUD_PRINTERS = r.PRINTING.createChild('/cloudPrinters');
228 // <if expr="chromeos">
229 r.CUPS_PRINTERS = r.PRINTING.createChild('/cupsPrinters');
230 r.CUPS_PRINTER_DETAIL = r.CUPS_PRINTERS.createChild('/cupsPrinterDetails');
231 // </if>
232
233 r.ACCESSIBILITY = r.ADVANCED.createSection('/accessibility', 'a11y');
234 // <if expr="chromeos">
235 r.MANAGE_ACCESSIBILITY = r.ACCESSIBILITY.createChild('/manageAccessibility');
236 // </if>
237
238 r.SYSTEM = r.ADVANCED.createSection('/system', 'system');
239 r.RESET = r.ADVANCED.createSection('/reset', 'reset');
240
241 // <if expr="chromeos"> 268 // <if expr="chromeos">
242 // "About" is the only section in About, but we still need to create the route 269 // "About" is the only section in About, but we still need to create the route
243 // in order to show the subpage on Chrome OS. 270 // in order to show the subpage on Chrome OS.
244 r.ABOUT_ABOUT = r.ABOUT.createSection('/help/about', 'about'); 271 r.ABOUT_ABOUT = r.ABOUT.createSection('/help/about', 'about');
245 r.DETAILED_BUILD_INFO = r.ABOUT_ABOUT.createChild('/help/details'); 272 r.DETAILED_BUILD_INFO = r.ABOUT_ABOUT.createChild('/help/details');
246 // </if> 273 // </if>
247 274
248 var routeObservers = new Set(); 275 var routeObservers = new Set();
249 276
250 /** @polymerBehavior */ 277 /** @polymerBehavior */
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
434 getRouteForPath: getRouteForPath, 461 getRouteForPath: getRouteForPath,
435 initializeRouteFromUrl: initializeRouteFromUrl, 462 initializeRouteFromUrl: initializeRouteFromUrl,
436 resetRouteForTesting: resetRouteForTesting, 463 resetRouteForTesting: resetRouteForTesting,
437 getCurrentRoute: getCurrentRoute, 464 getCurrentRoute: getCurrentRoute,
438 getQueryParameters: getQueryParameters, 465 getQueryParameters: getQueryParameters,
439 lastRouteChangeWasPopstate: lastRouteChangeWasPopstate, 466 lastRouteChangeWasPopstate: lastRouteChangeWasPopstate,
440 navigateTo: navigateTo, 467 navigateTo: navigateTo,
441 navigateToPreviousRoute: navigateToPreviousRoute, 468 navigateToPreviousRoute: navigateToPreviousRoute,
442 }; 469 };
443 }); 470 });
OLDNEW
« no previous file with comments | « chrome/browser/resources/settings/page_visibility.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698