Hide tabgrid panels when they are not actively visible |
||||
Issue descriptionI'd like to hide tabgrid panels when they are not visible. As an example, the Recent Tabs panel appears to be alive and active throughout the lifetime of the app. As discovered in Issue 854049 , it's listening for model updates and triggering cell layout any time a tab is opened or closed, even if the tab grid or panel is never made visible. How hard would it be to create panels lazily when the user starts to scroll, then destroy them in scrollDidEnd? This would add work to the start of a scroll, but it would also reduce resource consumption in the steady state.
,
Jun 27 2018
,
Jul 10
A portion of this has been completed. The recent tabs panel is no longer processing updates (recently closed items, and sync state updates) while in the background (tab grid). https://chromium-review.googlesource.com/c/chromium/src/+/1130462 The rest of this is deprioritized.
,
Jul 10
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c7eba43e274055f453d861f42425008353103222 commit c7eba43e274055f453d861f42425008353103222 Author: edchin <edchin@chromium.org> Date: Tue Jul 10 15:34:37 2018 [ios] Do not update recent tabs table view when not visible Since recent tabs is in the tab grid, it is always receiving updates and updating it's table view. This CL stops processing sync state updates and recently closed tabs updates by bookkeeping |-viewWillAppear:| and |-viewWillDisappear:|. This approach also fixes a crash while collapsing/uncollapsing a section while using the stand-alone recent tabs. This was due to the background recent tabs also being updated, but having an inconsistent state. The inconsistent state is because the collapse state is held in an NSUserDefault. Cq-Include-Trybots: luci.chromium.try:ios-simulator-full-configs;master.tryserver.chromium.mac:ios-simulator-cronet Change-Id: I247b8cbeb634a86a7b3b7d165a747c5eaa966e57 Bug: 856520, 854215 Reviewed-on: https://chromium-review.googlesource.com/1130462 Commit-Queue: edchin <edchin@chromium.org> Reviewed-by: Rohit Rao <rohitrao@chromium.org> Reviewed-by: edchin <edchin@chromium.org> Cr-Commit-Position: refs/heads/master@{#573743} [modify] https://crrev.com/c7eba43e274055f453d861f42425008353103222/ios/chrome/browser/ui/recent_tabs/recent_tabs_table_view_controller.mm
,
Jul 16
|
||||
►
Sign in to add a comment |
||||
Comment 1 by marq@chromium.org
, Jun 27 2018