| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 * @fileoverview | 6 * @fileoverview |
| 7 * 'settings-router' is a simple router for settings. Its responsibilities: | 7 * 'settings-router' is a simple router for settings. Its responsibilities: |
| 8 * - Update the URL when the routing state changes. | 8 * - Update the URL when the routing state changes. |
| 9 * - Initialize the routing state with the initial URL. | 9 * - Initialize the routing state with the initial URL. |
| 10 * - Process and validate all routing state changes. | 10 * - Process and validate all routing state changes. |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 51 } | 51 } |
| 52 | 52 |
| 53 // As a fallback return the default route. | 53 // As a fallback return the default route. |
| 54 return this.routes_[0]; | 54 return this.routes_[0]; |
| 55 }, | 55 }, |
| 56 }, | 56 }, |
| 57 | 57 |
| 58 /** | 58 /** |
| 59 * Page titles for the currently active route. Updated by the currentRoute | 59 * Page titles for the currently active route. Updated by the currentRoute |
| 60 * property observer. | 60 * property observer. |
| 61 * @type {{pageTitle: string, subpageTitles: Array<string>}} | 61 * @type {{pageTitle: string}} |
| 62 */ | 62 */ |
| 63 currentRouteTitles: { | 63 currentRouteTitles: { |
| 64 notify: true, | 64 notify: true, |
| 65 type: Object, | 65 type: Object, |
| 66 value: function() { | 66 value: function() { |
| 67 return { | 67 return { |
| 68 pageTitle: '', | 68 pageTitle: '', |
| 69 subpageTitles: [], | |
| 70 }; | 69 }; |
| 71 }, | 70 }, |
| 72 }, | 71 }, |
| 73 }, | 72 }, |
| 74 | 73 |
| 75 | 74 |
| 76 /** | 75 /** |
| 77 * @private | 76 * @private |
| 78 * The 'url' property is not accessible to other elements. | 77 * The 'url' property is not accessible to other elements. |
| 79 */ | 78 */ |
| 80 routes_: [ | 79 routes_: [ |
| 81 { | 80 { |
| 82 url: '/', | 81 url: '/', |
| 83 page: 'basic', | 82 page: 'basic', |
| 84 section: '', | 83 section: '', |
| 85 subpage: [], | 84 subpage: [], |
| 86 subpageTitles: [], | |
| 87 }, | 85 }, |
| 88 { | 86 { |
| 89 url: '/advanced', | 87 url: '/advanced', |
| 90 page: 'advanced', | 88 page: 'advanced', |
| 91 section: '', | 89 section: '', |
| 92 subpage: [], | 90 subpage: [], |
| 93 subpageTitles: [], | |
| 94 }, | 91 }, |
| 95 <if expr="chromeos"> | 92 <if expr="chromeos"> |
| 96 { | 93 { |
| 97 url: '/networkDetail', | 94 url: '/networkDetail', |
| 98 page: 'basic', | 95 page: 'basic', |
| 99 section: 'internet', | 96 section: 'internet', |
| 100 subpage: ['network-detail'], | 97 subpage: ['network-detail'], |
| 101 subpageTitles: ['internetDetailPageTitle'], | |
| 102 }, | 98 }, |
| 103 { | 99 { |
| 104 url: '/knownNetworks', | 100 url: '/knownNetworks', |
| 105 page: 'basic', | 101 page: 'basic', |
| 106 section: 'internet', | 102 section: 'internet', |
| 107 subpage: ['known-networks'], | 103 subpage: ['known-networks'], |
| 108 subpageTitles: ['internetKnownNetworksPageTitle'], | |
| 109 }, | 104 }, |
| 110 </if> | 105 </if> |
| 111 { | 106 { |
| 112 url: '/fonts', | 107 url: '/fonts', |
| 113 page: 'basic', | 108 page: 'basic', |
| 114 section: 'appearance', | 109 section: 'appearance', |
| 115 subpage: ['appearance-fonts'], | 110 subpage: ['appearance-fonts'], |
| 116 subpageTitles: ['customizeFonts'], | |
| 117 }, | 111 }, |
| 118 { | 112 { |
| 119 url: '/searchEngines', | 113 url: '/searchEngines', |
| 120 page: 'basic', | 114 page: 'basic', |
| 121 section: 'search', | 115 section: 'search', |
| 122 subpage: ['search-engines'], | 116 subpage: ['search-engines'], |
| 123 subpageTitles: ['searchEnginesPageTitle'], | |
| 124 }, | 117 }, |
| 125 { | 118 { |
| 126 url: '/searchEngines/advanced', | 119 url: '/searchEngines/advanced', |
| 127 page: 'basic', | 120 page: 'basic', |
| 128 section: 'search', | 121 section: 'search', |
| 129 subpage: ['search-engines', 'search-engines-advanced'], | 122 subpage: ['search-engines', 'search-engines-advanced'], |
| 130 subpageTitles: ['searchEnginesPageTitle', 'advancedPageTitle'], | |
| 131 }, | 123 }, |
| 132 <if expr="chromeos"> | 124 <if expr="chromeos"> |
| 133 { | 125 { |
| 134 url: '/changePicture', | 126 url: '/changePicture', |
| 135 page: 'basic', | 127 page: 'basic', |
| 136 section: 'people', | 128 section: 'people', |
| 137 subpage: ['changePicture'], | 129 subpage: ['changePicture'], |
| 138 subpageTitles: ['changePictureTitle'], | |
| 139 }, | 130 }, |
| 140 </if> | 131 </if> |
| 141 <if expr="not chromeos"> | 132 <if expr="not chromeos"> |
| 142 { | 133 { |
| 143 url: '/manageProfile', | 134 url: '/manageProfile', |
| 144 page: 'basic', | 135 page: 'basic', |
| 145 section: 'people', | 136 section: 'people', |
| 146 subpage: ['manageProfile'], | 137 subpage: ['manageProfile'], |
| 147 subpageTitles: ['editPerson'], | |
| 148 }, | 138 }, |
| 149 </if> | 139 </if> |
| 150 { | 140 { |
| 151 url: '/syncSetup', | 141 url: '/syncSetup', |
| 152 page: 'basic', | 142 page: 'basic', |
| 153 section: 'people', | 143 section: 'people', |
| 154 subpage: ['sync'], | 144 subpage: ['sync'], |
| 155 subpageTitles: ['syncPageTitle'], | |
| 156 }, | 145 }, |
| 157 <if expr="chromeos"> | 146 <if expr="chromeos"> |
| 158 { | 147 { |
| 159 url: '/accounts', | 148 url: '/accounts', |
| 160 page: 'basic', | 149 page: 'basic', |
| 161 section: 'people', | 150 section: 'people', |
| 162 subpage: ['users'], | 151 subpage: ['users'], |
| 163 subpageTitles: ['usersPageTitle'], | |
| 164 }, | 152 }, |
| 165 </if> | 153 </if> |
| 166 { | 154 { |
| 167 url: '/certificates', | 155 url: '/certificates', |
| 168 page: 'advanced', | 156 page: 'advanced', |
| 169 section: 'privacy', | 157 section: 'privacy', |
| 170 subpage: ['manage-certificates'], | 158 subpage: ['manage-certificates'], |
| 171 subpageTitles: ['manageCertificates'], | |
| 172 }, | 159 }, |
| 173 { | 160 { |
| 174 url: '/siteSettings', | 161 url: '/siteSettings', |
| 175 page: 'advanced', | 162 page: 'advanced', |
| 176 section: 'privacy', | 163 section: 'privacy', |
| 177 subpage: ['site-settings'], | 164 subpage: ['site-settings'], |
| 178 subpageTitles: ['siteSettings'], | |
| 179 }, | 165 }, |
| 180 // Site Category routes. | 166 // Site Category routes. |
| 181 { | 167 { |
| 182 url: '/siteSettings/all', | 168 url: '/siteSettings/all', |
| 183 page: 'advanced', | 169 page: 'advanced', |
| 184 section: 'privacy', | 170 section: 'privacy', |
| 185 subpage: ['site-settings', 'all-sites'], | 171 subpage: ['site-settings', 'all-sites'], |
| 186 subpageTitles: ['siteSettings', 'siteSettingsCategoryAllSites'], | |
| 187 }, | 172 }, |
| 188 { | 173 { |
| 189 url: '/siteSettings/camera', | 174 url: '/siteSettings/camera', |
| 190 page: 'advanced', | 175 page: 'advanced', |
| 191 section: 'privacy', | 176 section: 'privacy', |
| 192 subpage: ['site-settings', 'site-settings-category-camera'], | 177 subpage: ['site-settings', 'site-settings-category-camera'], |
| 193 subpageTitles: ['siteSettings', 'siteSettingsCategoryCamera'], | |
| 194 }, | 178 }, |
| 195 { | 179 { |
| 196 url: '/siteSettings/cookies', | 180 url: '/siteSettings/cookies', |
| 197 page: 'advanced', | 181 page: 'advanced', |
| 198 section: 'privacy', | 182 section: 'privacy', |
| 199 subpage: ['site-settings', 'site-settings-category-cookies'], | 183 subpage: ['site-settings', 'site-settings-category-cookies'], |
| 200 subpageTitles: ['siteSettings', 'siteSettingsCategoryCookies'], | |
| 201 }, | 184 }, |
| 202 { | 185 { |
| 203 url: '/siteSettings/fullscreen', | 186 url: '/siteSettings/fullscreen', |
| 204 page: 'advanced', | 187 page: 'advanced', |
| 205 section: 'privacy', | 188 section: 'privacy', |
| 206 subpage: ['site-settings', 'site-settings-category-fullscreen'], | 189 subpage: ['site-settings', 'site-settings-category-fullscreen'], |
| 207 subpageTitles: ['siteSettings', 'siteSettingsCategoryFullscreen'], | |
| 208 }, | 190 }, |
| 209 { | 191 { |
| 210 url: '/siteSettings/images', | 192 url: '/siteSettings/images', |
| 211 page: 'advanced', | 193 page: 'advanced', |
| 212 section: 'privacy', | 194 section: 'privacy', |
| 213 subpage: ['site-settings', 'site-settings-category-images'], | 195 subpage: ['site-settings', 'site-settings-category-images'], |
| 214 subpageTitles: ['siteSettings', 'siteSettingsCategoryImages'], | |
| 215 }, | 196 }, |
| 216 { | 197 { |
| 217 url: '/siteSettings/location', | 198 url: '/siteSettings/location', |
| 218 page: 'advanced', | 199 page: 'advanced', |
| 219 section: 'privacy', | 200 section: 'privacy', |
| 220 subpage: ['site-settings', 'site-settings-category-location'], | 201 subpage: ['site-settings', 'site-settings-category-location'], |
| 221 subpageTitles: ['siteSettings', 'siteSettingsCategoryLocation'], | |
| 222 }, | 202 }, |
| 223 { | 203 { |
| 224 url: '/siteSettings/javascript', | 204 url: '/siteSettings/javascript', |
| 225 page: 'advanced', | 205 page: 'advanced', |
| 226 section: 'privacy', | 206 section: 'privacy', |
| 227 subpage: ['site-settings', 'site-settings-category-javascript'], | 207 subpage: ['site-settings', 'site-settings-category-javascript'], |
| 228 subpageTitles: ['siteSettings', 'siteSettingsCategoryJavascript'], | |
| 229 }, | 208 }, |
| 230 { | 209 { |
| 231 url: '/siteSettings/microphone', | 210 url: '/siteSettings/microphone', |
| 232 page: 'advanced', | 211 page: 'advanced', |
| 233 section: 'privacy', | 212 section: 'privacy', |
| 234 subpage: ['site-settings', 'site-settings-category-microphone'], | 213 subpage: ['site-settings', 'site-settings-category-microphone'], |
| 235 subpageTitles: ['siteSettings', 'siteSettingsCategoryMicrophone'], | |
| 236 }, | 214 }, |
| 237 { | 215 { |
| 238 url: '/siteSettings/notifications', | 216 url: '/siteSettings/notifications', |
| 239 page: 'advanced', | 217 page: 'advanced', |
| 240 section: 'privacy', | 218 section: 'privacy', |
| 241 subpage: ['site-settings', 'site-settings-category-notifications'], | 219 subpage: ['site-settings', 'site-settings-category-notifications'], |
| 242 subpageTitles: ['siteSettings', 'siteSettingsCategoryNotifications'], | |
| 243 }, | 220 }, |
| 244 { | 221 { |
| 245 url: '/siteSettings/popups', | 222 url: '/siteSettings/popups', |
| 246 page: 'advanced', | 223 page: 'advanced', |
| 247 section: 'privacy', | 224 section: 'privacy', |
| 248 subpage: ['site-settings', 'site-settings-category-popups'], | 225 subpage: ['site-settings', 'site-settings-category-popups'], |
| 249 subpageTitles: ['siteSettings', 'siteSettingsCategoryPopups'], | |
| 250 }, | 226 }, |
| 251 // Site details routes. | 227 // Site details routes. |
| 252 { | 228 { |
| 253 url: '/siteSettings/all/details', | 229 url: '/siteSettings/all/details', |
| 254 page: 'advanced', | 230 page: 'advanced', |
| 255 section: 'privacy', | 231 section: 'privacy', |
| 256 subpage: ['site-settings', 'all-sites', 'site-details'], | 232 subpage: ['site-settings', 'all-sites', 'site-details'], |
| 257 subpageTitles: ['siteSettings', 'siteSettingsCategoryAllSites', | |
| 258 'siteSettingsSiteDetailsPageTitle'], | |
| 259 }, | 233 }, |
| 260 { | 234 { |
| 261 url: '/siteSettings/camera/details', | 235 url: '/siteSettings/camera/details', |
| 262 page: 'advanced', | 236 page: 'advanced', |
| 263 section: 'privacy', | 237 section: 'privacy', |
| 264 subpage: ['site-settings', 'site-settings-category-camera', | 238 subpage: ['site-settings', 'site-settings-category-camera', |
| 265 'site-details'], | 239 'site-details'], |
| 266 subpageTitles: ['siteSettings', 'siteSettingsCamera', | |
| 267 'siteSettingsSiteDetailsPageTitle'], | |
| 268 }, | 240 }, |
| 269 { | 241 { |
| 270 url: '/siteSettings/cookies/details', | 242 url: '/siteSettings/cookies/details', |
| 271 page: 'advanced', | 243 page: 'advanced', |
| 272 section: 'privacy', | 244 section: 'privacy', |
| 273 subpage: ['site-settings', 'site-settings-category-cookies', | 245 subpage: ['site-settings', 'site-settings-category-cookies', |
| 274 'site-details'], | 246 'site-details'], |
| 275 subpageTitles: ['siteSettings', 'siteSettingsCategoryCookies', | |
| 276 'siteSettingsSiteDetailsPageTitle'], | |
| 277 }, | 247 }, |
| 278 { | 248 { |
| 279 url: '/siteSettings/fullscreen/details', | 249 url: '/siteSettings/fullscreen/details', |
| 280 page: 'advanced', | 250 page: 'advanced', |
| 281 section: 'privacy', | 251 section: 'privacy', |
| 282 subpage: ['site-settings', 'site-settings-category-fullscreen', | 252 subpage: ['site-settings', 'site-settings-category-fullscreen', |
| 283 'site-details'], | 253 'site-details'], |
| 284 subpageTitles: ['siteSettings', 'siteSettingsCategoryFullscreen', | |
| 285 'siteSettingsSiteDetailsPageTitle'], | |
| 286 }, | 254 }, |
| 287 { | 255 { |
| 288 url: '/siteSettings/images/details', | 256 url: '/siteSettings/images/details', |
| 289 page: 'advanced', | 257 page: 'advanced', |
| 290 section: 'privacy', | 258 section: 'privacy', |
| 291 subpage: ['site-settings', 'site-settings-category-images', | 259 subpage: ['site-settings', 'site-settings-category-images', |
| 292 'site-details'], | 260 'site-details'], |
| 293 subpageTitles: ['siteSettings', 'siteSettingsCategoryImages', | |
| 294 'siteSettingsSiteDetailsPageTitle'], | |
| 295 }, | 261 }, |
| 296 { | 262 { |
| 297 url: '/siteSettings/location/details', | 263 url: '/siteSettings/location/details', |
| 298 page: 'advanced', | 264 page: 'advanced', |
| 299 section: 'privacy', | 265 section: 'privacy', |
| 300 subpage: ['site-settings', 'site-settings-category-location', | 266 subpage: ['site-settings', 'site-settings-category-location', |
| 301 'site-details'], | 267 'site-details'], |
| 302 subpageTitles: ['siteSettings', 'siteSettingsCategoryLocation', | |
| 303 'siteSettingsSiteDetailsPageTitle'], | |
| 304 }, | 268 }, |
| 305 { | 269 { |
| 306 url: '/siteSettings/javascript/details', | 270 url: '/siteSettings/javascript/details', |
| 307 page: 'advanced', | 271 page: 'advanced', |
| 308 section: 'privacy', | 272 section: 'privacy', |
| 309 subpage: ['site-settings', 'site-settings-category-javascript', | 273 subpage: ['site-settings', 'site-settings-category-javascript', |
| 310 'site-details'], | 274 'site-details'], |
| 311 subpageTitles: ['siteSettings', 'siteSettingsCategoryJavascript', | |
| 312 'siteSettingsSiteDetailsPageTitle'], | |
| 313 }, | 275 }, |
| 314 { | 276 { |
| 315 url: '/siteSettings/microphone/details', | 277 url: '/siteSettings/microphone/details', |
| 316 page: 'advanced', | 278 page: 'advanced', |
| 317 section: 'privacy', | 279 section: 'privacy', |
| 318 subpage: ['site-settings', 'site-settings-category-microphone', | 280 subpage: ['site-settings', 'site-settings-category-microphone', |
| 319 'site-details'], | 281 'site-details'], |
| 320 subpageTitles: ['siteSettings', 'siteSettingsCategoryMicrophone', | |
| 321 'siteSettingsSiteDetailsPageTitle'], | |
| 322 }, | 282 }, |
| 323 { | 283 { |
| 324 url: '/siteSettings/notifications/details', | 284 url: '/siteSettings/notifications/details', |
| 325 page: 'advanced', | 285 page: 'advanced', |
| 326 section: 'privacy', | 286 section: 'privacy', |
| 327 subpage: ['site-settings', 'site-settings-category-notifications', | 287 subpage: ['site-settings', 'site-settings-category-notifications', |
| 328 'site-details'], | 288 'site-details'], |
| 329 subpageTitles: ['siteSettings', 'siteSettingsCategoryNotifications', | |
| 330 'siteSettingsSiteDetailsPageTitle'], | |
| 331 }, | 289 }, |
| 332 { | 290 { |
| 333 url: '/siteSettings/popups/details', | 291 url: '/siteSettings/popups/details', |
| 334 page: 'advanced', | 292 page: 'advanced', |
| 335 section: 'privacy', | 293 section: 'privacy', |
| 336 subpage: ['site-settings', 'site-settings-category-popups', | 294 subpage: ['site-settings', 'site-settings-category-popups', |
| 337 'site-details'], | 295 'site-details'], |
| 338 subpageTitles: ['siteSettings', 'siteSettingsCategoryPopups', | |
| 339 'siteSettingsSiteDetailsPageTitle'], | |
| 340 }, | 296 }, |
| 341 { | 297 { |
| 342 url: '/clearBrowserData', | 298 url: '/clearBrowserData', |
| 343 page: 'advanced', | 299 page: 'advanced', |
| 344 section: 'privacy', | 300 section: 'privacy', |
| 345 subpage: ['clear-browsing-data'], | 301 subpage: ['clear-browsing-data'], |
| 346 subpageTitles: ['clearBrowsingData'], | |
| 347 }, | 302 }, |
| 348 <if expr="chromeos"> | 303 <if expr="chromeos"> |
| 349 { | 304 { |
| 350 url: '/bluetoothAddDevice', | 305 url: '/bluetoothAddDevice', |
| 351 page: 'advanced', | 306 page: 'advanced', |
| 352 section: 'bluetooth', | 307 section: 'bluetooth', |
| 353 subpage: ['bluetooth-add-device'], | 308 subpage: ['bluetooth-add-device'], |
| 354 subpageTitles: ['bluetoothAddDevicePageTitle'], | |
| 355 }, | 309 }, |
| 356 { | 310 { |
| 357 url: '/bluetoothAddDevice/bluetoothPairDevice', | 311 url: '/bluetoothAddDevice/bluetoothPairDevice', |
| 358 page: 'advanced', | 312 page: 'advanced', |
| 359 section: 'bluetooth', | 313 section: 'bluetooth', |
| 360 subpage: ['bluetooth-add-device', 'bluetooth-pair-device'], | 314 subpage: ['bluetooth-add-device', 'bluetooth-pair-device'], |
| 361 subpageTitles: ['bluetoothAddDevicePageTitle', | |
| 362 'bluetoothPairDevicePageTitle'], | |
| 363 }, | 315 }, |
| 364 </if> | 316 </if> |
| 365 { | 317 { |
| 366 url: '/languages', | 318 url: '/languages', |
| 367 page: 'advanced', | 319 page: 'advanced', |
| 368 section: 'languages', | 320 section: 'languages', |
| 369 subpage: ['manage-languages'], | 321 subpage: ['manage-languages'], |
| 370 subpageTitles: ['manageLanguagesPageTitle'], | |
| 371 }, | 322 }, |
| 372 { | 323 { |
| 373 url: '/languages/edit', | 324 url: '/languages/edit', |
| 374 page: 'advanced', | 325 page: 'advanced', |
| 375 section: 'languages', | 326 section: 'languages', |
| 376 subpage: ['language-detail'], | 327 subpage: ['language-detail'], |
| 377 subpageTitles: ['manageLanguagesPageTitle'], | |
| 378 }, | 328 }, |
| 379 <if expr="not is_macosx"> | 329 <if expr="not is_macosx"> |
| 380 { | 330 { |
| 381 url: '/editDictionary', | 331 url: '/editDictionary', |
| 382 page: 'advanced', | 332 page: 'advanced', |
| 383 section: 'languages', | 333 section: 'languages', |
| 384 subpage: ['edit-dictionary'], | 334 subpage: ['edit-dictionary'], |
| 385 subpageTitles: ['editDictionaryPageTitle'], | |
| 386 }, | 335 }, |
| 387 </if> | 336 </if> |
| 388 <if expr="chromeos"> | 337 <if expr="chromeos"> |
| 389 { | 338 { |
| 390 url: '/pointer-overlay', | 339 url: '/pointer-overlay', |
| 391 page: 'basic', | 340 page: 'basic', |
| 392 section: 'device', | 341 section: 'device', |
| 393 subpage: ['touchpad'], | 342 subpage: ['touchpad'], |
| 394 subpageTitles: ['touchpadTitle'], | |
| 395 }, | 343 }, |
| 396 { | 344 { |
| 397 url: '/keyboard-overlay', | 345 url: '/keyboard-overlay', |
| 398 page: 'basic', | 346 page: 'basic', |
| 399 section: 'device', | 347 section: 'device', |
| 400 subpage: ['keyboard'], | 348 subpage: ['keyboard'], |
| 401 subpageTitles: ['keyboardTitle'], | |
| 402 }, | 349 }, |
| 403 </if> | 350 </if> |
| 404 ], | 351 ], |
| 405 | 352 |
| 406 /** | 353 /** |
| 407 * Sets up a history popstate observer. | 354 * Sets up a history popstate observer. |
| 408 */ | 355 */ |
| 409 created: function() { | 356 created: function() { |
| 410 window.addEventListener('popstate', function(event) { | 357 window.addEventListener('popstate', function(event) { |
| 411 if (event.state && event.state.page) | 358 if (event.state && event.state.page) |
| (...skipping 12 matching lines...) Expand all Loading... |
| 424 var route = this.routes_[i]; | 371 var route = this.routes_[i]; |
| 425 if (route.page == newRoute.page && route.section == newRoute.section && | 372 if (route.page == newRoute.page && route.section == newRoute.section && |
| 426 route.subpage.length == newRoute.subpage.length && | 373 route.subpage.length == newRoute.subpage.length && |
| 427 newRoute.subpage.every(function(value, index) { | 374 newRoute.subpage.every(function(value, index) { |
| 428 return value == route.subpage[index]; | 375 return value == route.subpage[index]; |
| 429 })) { | 376 })) { |
| 430 | 377 |
| 431 // Update the property containing the titles for the current route. | 378 // Update the property containing the titles for the current route. |
| 432 this.currentRouteTitles = { | 379 this.currentRouteTitles = { |
| 433 pageTitle: loadTimeData.getString(route.page + 'PageTitle'), | 380 pageTitle: loadTimeData.getString(route.page + 'PageTitle'), |
| 434 subpageTitles: route.subpageTitles.map(function(titleCode) { | |
| 435 return loadTimeData.getString(titleCode); | |
| 436 }), | |
| 437 }; | 381 }; |
| 438 | 382 |
| 439 // If we are restoring a state from history, don't push it again. | 383 // If we are restoring a state from history, don't push it again. |
| 440 if (newRoute.inHistory) | 384 if (newRoute.inHistory) |
| 441 return; | 385 return; |
| 442 | 386 |
| 443 // Mark routes persisted in history as already stored in history. | 387 // Mark routes persisted in history as already stored in history. |
| 444 var historicState = { | 388 var historicState = { |
| 445 inHistory: true, | 389 inHistory: true, |
| 446 page: newRoute.page, | 390 page: newRoute.page, |
| (...skipping 12 matching lines...) Expand all Loading... |
| 459 window.history.replaceState(historicState, document.title); | 403 window.history.replaceState(historicState, document.title); |
| 460 } | 404 } |
| 461 | 405 |
| 462 return; | 406 return; |
| 463 } | 407 } |
| 464 } | 408 } |
| 465 | 409 |
| 466 assertNotReached('Route not found: ' + JSON.stringify(newRoute)); | 410 assertNotReached('Route not found: ' + JSON.stringify(newRoute)); |
| 467 }, | 411 }, |
| 468 }); | 412 }); |
| OLD | NEW |