New issue
Advanced search Search tips

Issue 869351 link

Starred by 3 users

Issue metadata

Status: Verified
Owner:
Closed: Aug 9
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 1
Type: Bug



Sign in to add a comment

Tab titles, favicons, and snapshots disppear from tabgrid with slim nav enabled

Project Member Reported by rohitrao@chromium.org, Jul 31

Issue description

70.0.3501.0 dev

With slim nav enabled, I often see missing titles/favicons/snapshots in the tab grid.  I've attached a screenshot showing six tabs in a row that are missing everything.  (At the time, 10 out of 14 of my tabs were missing something, and 8 were totally blank.)

On a slightly more recent canary, when I turned off slim nav and restarted Chrome, all tabs displayed properly.  When I turned slim nav off again, titles and favicons disappeared, but snapshots remained visible.

It seems as though slim nav is preventing the tab grid from properly reading tab titles and favicons on startup.  This may also be causing us to stop displaying snapshots, although it appears that those aren't permanently lost.
 
blanktabs.png
79.9 KB View Download
Issue 845890 has been merged into this issue.
Rohit, can you post your repro steps? I haven't noticed this problem in my usage, so I must be doing something different from you are.

On cold start, slim nav takes time to restore session. Until session is restored, WebState should provide the title from here: https://cs.chromium.org/chromium/src/ios/web/web_state/web_state_impl.mm?q=web_state_impl.mm&sq=package:chromium&dr&l=324

How does the tab grid get tab title and favicons?
Labels: -Q2 -M-69 MS-TabGrid M-70
Pushing to M70
Cc: -edchin@chromium.org
Owner: edchin@chromium.org
Status: Assigned (was: Untriaged)
Assigning to edchin@ first since he's been working on snapshots
Cc: edchin@chromium.org
Owner: danyao@chromium.org
danyao@, I think it would be easier for you to tackle this starting from the slim nav changes. Let me know if you disagree. 
This issue is also reproducible with below steps:

Steps to reproduce:
1. Launch iOS Chrome
2. Open ‘3’ or ‘4’ tabs and navigate to various URLs
3. Tap on the tab switcher icon
4. Force quit the app
5. Relaunch the app

Observed results:
Tab titles, favicons are not displayed for the tabs in tab grid & displayed only for the active tab

Note: 
1. Failed to restore titles even after waiting for more than 5 mins. Tab titles will be restored only on choosing the tab. 
2. Tab snapshots are shown blank only for iPads

Video:
https://drive.google.com/open?id=1aewiGEybGp0OFA7kcipvjA3OkYrXSJum


Project Member

Comment 8 by bugdroid1@chromium.org, Aug 9

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b7cfeb481f313d900c679e7c14e1d9e8df7c836c

commit b7cfeb481f313d900c679e7c14e1d9e8df7c836c
Author: Danyao Wang <danyao@google.com>
Date: Thu Aug 09 22:59:34 2018

[Nav Experiment] Cache visible item in nav manager during session restore

TabGridMediator relies on VisibleURL to determine if the title of a
tab should be hidden. During session restore, the restore_session.html
item is briefly the only visible item in the web view until the other
entries are restored, and it has chrome://newtab as the virtual URL.
This incorrectly causes the CreateItem() in TabGridMediator to set
|hidesTitle| to true for the grid item.

Previously visible item title was cached in WebStateImpl for a similar
reason (http://crbug.com/819606). This change combines the two use cases.


Bug:  869351 
Cq-Include-Trybots: luci.chromium.try:ios-simulator-full-configs;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I5391eda466ad9de26087d2d8a1e2a97a7a83f27a
Reviewed-on: https://chromium-review.googlesource.com/1157866
Commit-Queue: Danyao Wang <danyao@chromium.org>
Reviewed-by: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#581946}
[modify] https://crrev.com/b7cfeb481f313d900c679e7c14e1d9e8df7c836c/ios/chrome/browser/voice/voice_search_navigations_tab_helper.mm
[modify] https://crrev.com/b7cfeb481f313d900c679e7c14e1d9e8df7c836c/ios/web/navigation/wk_based_navigation_manager_impl.h
[modify] https://crrev.com/b7cfeb481f313d900c679e7c14e1d9e8df7c836c/ios/web/navigation/wk_based_navigation_manager_impl.mm
[modify] https://crrev.com/b7cfeb481f313d900c679e7c14e1d9e8df7c836c/ios/web/navigation/wk_based_navigation_manager_impl_unittest.mm
[modify] https://crrev.com/b7cfeb481f313d900c679e7c14e1d9e8df7c836c/ios/web/web_state/web_state_impl.h
[modify] https://crrev.com/b7cfeb481f313d900c679e7c14e1d9e8df7c836c/ios/web/web_state/web_state_impl.mm
[modify] https://crrev.com/b7cfeb481f313d900c679e7c14e1d9e8df7c836c/ios/web/web_state/web_state_impl_unittest.mm

Status: Fixed (was: Assigned)
Status: Verified (was: Fixed)
Verified on chrome canary version 70.0.3521.0 on iPhone X and iPad Pro with iOS 11.4.1 and iPhone 6s plus with iOS 12 beta 6, following steps mentioned in comment #7, Tab titles, favicons, and snapshots are displayed in tab switcher mode.  Looks good.

Sign in to add a comment