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

Issue 1826683002: MD Settings: Lazy-load sub-pages. (Closed)

Created:
4 years, 9 months ago by michaelpg
Modified:
4 years, 8 months ago
Reviewers:
tommycli, stevenjb, sorvell, *Dan Beam, kschaaf
CC:
chromium-reviews, michaelpg+watch-md-settings_chromium.org, jlklein+watch-closure_chromium.org, michaelpg+watch-md-ui_chromium.org, arv+watch_chromium.org, vitalyp+closure_chromium.org, dbeam+watch-settings_chromium.org, stevenjb+watch-md-settings_chromium.org, dbeam+watch-closure_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@WebAnimationsExterns
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

MD Settings: Lazy-load sub-pages. chrome://md-settings consists of two Pages: Basic and Advanced. Each Page is composed of Sections (appearance, language, users, etc.). Some Sections have additional Subpages "behind" them; these Subpages can be opened by expanding the Section to fill the Page and presenting the Subpage in place of the main Section contents. This CL prevents these Subpages from being created until they are displayed. * Rename settings-subheader to settings-subpage, make it NeonAnimatable, and use it to wrap the actual page. * Place these sub-pages inside <template is="dom-if">s. * Rework settings-animated-pages to manage the "if" setting of these templates. TL;DR: instead of <neon-animatable name="some-page"> <settings-subheader></settings-subheader> <some-page></some-page> </neon-animatable> do <template is="dom-if" name="some-page"> <settings-subpage> <some-page></some-page> </settings-subpage> </template> Load time in milliseconds (on my Goobuntu Z840): Linux Chrome OS Basic Advanced Basic Advanced Before (ToT) 2013 3310 3825 3651 After (this) 1649 1726 2317 2156 BUG=597348 Committed: https://crrev.com/cecbc0485f9aa102a0f299978f81d47bffc6536f Cr-Commit-Position: refs/heads/master@{#384245}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Total comments: 8

Patch Set 5 : test, rebase #

Patch Set 6 : no-op #

Total comments: 6

Patch Set 7 : dbeam #

Patch Set 8 : rebase #

Patch Set 9 : flush to prepare light DOM #

Total comments: 1

Patch Set 10 : closure #

Unified diffs Side-by-side diffs Delta from patch set Stats (+400 lines, -324 lines) Patch
M chrome/browser/resources/settings/appearance_page/appearance_page.html View 1 2 3 4 2 chunks +5 lines, -8 lines 0 comments Download
M chrome/browser/resources/settings/device_page/device_page.html View 1 2 3 2 chunks +11 lines, -11 lines 0 comments Download
M chrome/browser/resources/settings/device_page/keyboard.html View 1 2 3 4 5 6 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/resources/settings/internet_page/compiled_resources2.gyp View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/resources/settings/internet_page/internet_detail_page.js View 1 2 3 4 5 6 2 chunks +4 lines, -1 line 0 comments Download
M chrome/browser/resources/settings/internet_page/internet_page.html View 1 2 3 4 5 6 2 chunks +22 lines, -21 lines 0 comments Download
M chrome/browser/resources/settings/internet_page/internet_page.js View 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/resources/settings/languages_page/compiled_resources2.gyp View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/resources/settings/languages_page/languages_page.html View 1 2 3 3 chunks +20 lines, -20 lines 0 comments Download
M chrome/browser/resources/settings/languages_page/languages_page.js View 1 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/resources/settings/on_startup_page/on_startup_page.html View 1 chunk +0 lines, -3 lines 0 comments Download
M chrome/browser/resources/settings/passwords_and_forms_page/passwords_and_forms_page.html View 1 2 3 4 2 chunks +10 lines, -10 lines 0 comments Download
M chrome/browser/resources/settings/people_page/people_page.html View 1 2 3 4 2 chunks +24 lines, -24 lines 0 comments Download
M chrome/browser/resources/settings/privacy_page/privacy_page.html View 1 2 3 4 5 6 7 8 9 3 chunks +110 lines, -111 lines 0 comments Download
M chrome/browser/resources/settings/privacy_page/privacy_page.js View 1 2 3 4 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/resources/settings/search_page/search_page.html View 1 2 3 4 5 6 7 8 3 chunks +7 lines, -6 lines 0 comments Download
M chrome/browser/resources/settings/search_page/search_page.js View 1 2 3 4 5 6 7 8 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/resources/settings/settings_page/compiled_resources2.gyp View 1 1 chunk +9 lines, -0 lines 0 comments Download
M chrome/browser/resources/settings/settings_page/settings_animated_pages.html View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/resources/settings/settings_page/settings_animated_pages.js View 1 2 3 4 5 6 7 8 9 3 chunks +64 lines, -0 lines 0 comments Download
D chrome/browser/resources/settings/settings_page/settings_subheader.html View 1 2 3 4 1 chunk +0 lines, -38 lines 0 comments Download
D chrome/browser/resources/settings/settings_page/settings_subheader.js View 1 chunk +0 lines, -24 lines 0 comments Download
A + chrome/browser/resources/settings/settings_page/settings_subpage.html View 1 2 3 4 2 chunks +6 lines, -3 lines 0 comments Download
A + chrome/browser/resources/settings/settings_page/settings_subpage.js View 1 2 3 1 chunk +14 lines, -8 lines 0 comments Download
M chrome/browser/resources/settings/settings_resources.grd View 1 2 3 4 5 6 7 8 9 1 chunk +4 lines, -4 lines 0 comments Download
M chrome/browser/resources/settings/site_settings/site_settings_category.html View 1 2 3 4 1 chunk +0 lines, -3 lines 0 comments Download
M chrome/browser/resources/settings/site_settings/site_settings_category.js View 1 2 3 4 1 chunk +5 lines, -4 lines 0 comments Download
M chrome/test/data/webui/settings/advanced_page_browsertest.js View 1 2 3 4 5 6 2 chunks +11 lines, -11 lines 0 comments Download
M chrome/test/data/webui/settings/basic_page_browsertest.js View 1 2 3 4 5 6 2 chunks +12 lines, -10 lines 0 comments Download
M chrome/test/data/webui/settings/device_page_tests.js View 1 2 3 4 5 6 7 8 1 chunk +7 lines, -2 lines 0 comments Download
M chrome/test/data/webui/settings/settings_page_browsertest.js View 1 2 3 4 5 6 1 chunk +34 lines, -0 lines 0 comments Download

Messages

Total messages: 51 (27 generated)
michaelpg
Dan/Tommy: Please review or divide amongst yourselves as you see fit. Kevin/Steve: Please make sure ...
4 years, 9 months ago (2016-03-23 19:57:05 UTC) #6
tommycli
michealpg: This is fantastic work. It'd be a great thing for subpages to be loaded ...
4 years, 9 months ago (2016-03-24 19:14:50 UTC) #7
michaelpg
On 2016/03/24 19:14:50, tommycli wrote: > michealpg: > > This is fantastic work. It'd be ...
4 years, 9 months ago (2016-03-24 19:56:30 UTC) #8
tommycli
On 2016/03/24 19:56:30, michaelpg wrote: > On 2016/03/24 19:14:50, tommycli wrote: > > michealpg: > ...
4 years, 9 months ago (2016-03-24 21:05:29 UTC) #9
Dan Beam
can you write a test to check that thing are (and aren't) rendered as expected? ...
4 years, 9 months ago (2016-03-25 03:21:59 UTC) #10
Dan Beam
also, did you mean to use [preserve-content] or do you need to update your CL ...
4 years, 9 months ago (2016-03-25 03:22:40 UTC) #11
michaelpg
On 2016/03/25 03:22:40, Dan Beam wrote: > also, did you mean to use [preserve-content] or ...
4 years, 8 months ago (2016-03-29 22:02:45 UTC) #13
michaelpg
addressed comments and added test. sorry for the mess, should have rebased separately! https://codereview.chromium.org/1826683002/diff/60001/chrome/browser/resources/settings/settings_page/settings_animated_pages.js File ...
4 years, 8 months ago (2016-03-29 22:04:03 UTC) #14
Dan Beam
lgtm otherwise https://codereview.chromium.org/1826683002/diff/100001/chrome/browser/resources/settings/privacy_page/privacy_page.html File chrome/browser/resources/settings/privacy_page/privacy_page.html (right): https://codereview.chromium.org/1826683002/diff/100001/chrome/browser/resources/settings/privacy_page/privacy_page.html#newcode219 chrome/browser/resources/settings/privacy_page/privacy_page.html:219: </template> wat https://codereview.chromium.org/1826683002/diff/100001/chrome/test/data/webui/settings/settings_page_browsertest.js File chrome/test/data/webui/settings/settings_page_browsertest.js (right): https://codereview.chromium.org/1826683002/diff/100001/chrome/test/data/webui/settings/settings_page_browsertest.js#newcode84 ...
4 years, 8 months ago (2016-03-30 03:44:28 UTC) #15
michaelpg
dbeam changes and some bug fixes. +stevenjb for internet change, assuming the browser proxy stuff ...
4 years, 8 months ago (2016-03-30 22:48:03 UTC) #18
stevenjb
nice. internet lgtm. (I'll plan to improve how we access networkingPrivate in a follow-up).
4 years, 8 months ago (2016-03-30 22:51:42 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1826683002/120002 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1826683002/120002
4 years, 8 months ago (2016-03-30 23:55:50 UTC) #22
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_rel_ng/builds/188598)
4 years, 8 months ago (2016-03-31 00:49:41 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1826683002/120002 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1826683002/120002
4 years, 8 months ago (2016-03-31 01:35:17 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1826683002/150001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1826683002/150001
4 years, 8 months ago (2016-03-31 01:59:50 UTC) #30
michaelpg
https://codereview.chromium.org/1826683002/diff/150001/chrome/test/data/webui/settings/device_page_tests.js File chrome/test/data/webui/settings/device_page_tests.js (right): https://codereview.chromium.org/1826683002/diff/150001/chrome/test/data/webui/settings/device_page_tests.js#newcode62 chrome/test/data/webui/settings/device_page_tests.js:62: Polymer.dom.flush(); Without this, the light DOM observer isn't called ...
4 years, 8 months ago (2016-03-31 02:00:21 UTC) #31
Dan Beam
still lgtm
4 years, 8 months ago (2016-03-31 04:25:23 UTC) #32
commit-bot: I haz the power
Try jobs failed on following builders: win8_chromium_ng on tryserver.chromium.win (JOB_TIMED_OUT, http://build.chromium.org/p/tryserver.chromium.win/builders/win8_chromium_ng/builds/124740) win_chromium_rel_ng on tryserver.chromium.win (JOB_TIMED_OUT, ...
4 years, 8 months ago (2016-03-31 08:01:22 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1826683002/150001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1826683002/150001
4 years, 8 months ago (2016-03-31 09:23:34 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1826683002/190001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1826683002/190001
4 years, 8 months ago (2016-03-31 09:35:18 UTC) #42
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_asan_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_asan_rel_ng/builds/138209)
4 years, 8 months ago (2016-03-31 10:25:05 UTC) #44
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1826683002/190001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1826683002/190001
4 years, 8 months ago (2016-03-31 10:31:24 UTC) #46
commit-bot: I haz the power
Failed to apply patch for chrome/browser/resources/settings/settings_page/settings_subpage.html: While running git apply --index -3 -p1; error: chrome/browser/resources/settings/settings_page/settings_subheader.html: ...
4 years, 8 months ago (2016-03-31 11:32:20 UTC) #48
commit-bot: I haz the power
4 years, 8 months ago (2016-03-31 11:32:50 UTC) #51
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/cecbc0485f9aa102a0f299978f81d47bffc6536f
Cr-Commit-Position: refs/heads/master@{#384245}

Powered by Google App Engine
This is Rietveld 408576698