Issue metadata
Sign in to add a comment
|
Twitter Lite renders incorrectly until browser is restarted |
||||||||||||||||||||||
Issue descriptionGoogle Chrome 67.0.3378.0 (Official Build)dev (32-bit) Revision 05e32b12a408b22f5fd5ecd036fbc541b8ffb8b2-refs/heads/master@{#544931} OS: Pixel 2, Android 8.1.0, OPM1.171019.021 What steps will reproduce the problem? (1) Use Twitter Lite WebAPK frequently along with other apps (note: native Twitter Android app is *not* installed) (2) Tap Twitter Lite icon on home screen to go back to Twitter after some time What is the expected result? Expect to be properly logged on to Twitter and for all app functionality to work like quoting, retweeting, etc. What happens instead? Looks like some necessary background service has exited. Can tap on tweets, and number of notifications seems to be correct, but my profile picture doesn't show up, and almost none of the buttons in the UI work. (The top menu doesn't work, and quoting, retweeting, etc. have no effect when tapped.) Tapping on them goes to the detail view of the tweet rather than anything else. Restarting the browser instance hosting the Twitter Lite PWA – by swiping away Twitter Lite from the app list (Android's Overview button) solves the problem. See the attached incorrect and correct screenshots, grabbed before and after restarting the browser. I'll link to a bug report captured from my device after filing this. This behavior started about a week ago in Chrome Dev. I should have reported it the first time I saw it. It's still present and I don't think it's been filed yet. It's a serious regression as it breaks a major WebAPK. Marking P1, Regression, ReleaseBlock-Stable for M67.
,
Mar 29 2018
I actually noticed this too. I think this is a browser UI issue and not relating to login state but I'm not sure. My first thought was https://chromiumdash.appspot.com/commit/6f4d1915dbc5f2bb56e29e0a3a1dc13407c884f5 but that was M66 which was a while ago Tentatively assigning to Peter but cc'ing some related owners for webapps/twa in case anything comes to mind
,
Mar 29 2018
Going to tentatively flag M-66 cause I can't really dismiss that CL as a candidate at the moment. kbr: is it possible we've been seeing this since March 7? I feel like that's too long ago but not sure
,
Mar 29 2018
Another Q: do you notice any association between this and puhs notification? I wonder if chrome is started for notificatoin and then we show UI whether this may have an impact (just testing theories)
,
Mar 29 2018
It is possible it started happening that early in March. I'm really sorry I didn't file this earlier, but don't remember when I first saw it. Thinking about it more, it can't have lost my login credentials, because otherwise it would be unable to display any tweets at all. (I tried this in an incognito Chrome Dev tab after filing the bug, and Twitter just requests you to log in.) https://chromiumdash.appspot.com/commit/6f4d1915dbc5f2bb56e29e0a3a1dc13407c884f5 sounds plausible. I don't know the default rendering state of a Chrome Custom Tab but note the generic header when the PWA gets into this state, rather than the regular profile picture. Is there any more information I can gather when this happens the next time? Should I connect DevTools to the Chrome instance hosting Twitter Lite and gather anything?
,
Mar 30 2018
This is also happening for me on both Twitter Lite and another home-screen installed app. Version 67.0.3381.2. No UI events work, can't click on any links.
,
Apr 5 2018
pkotwicz@ any update here? M66 release is nearing.
,
Apr 5 2018
No updates. I have not yet been able to reproduce this bug
,
Apr 5 2018
Rick mentioned seeing this too but couldn't exactly pin repro steps. He mentioend seeing it on Beta which would suggest this is M66 (or site-specific behaviour). I haven't seen this in the last few days. Peter: wondering if this at all could be if a navigation happens while it's in the background?
,
Apr 5 2018
I think I've seen this only once in the past few days, on Dev Channel (M67). The incidence definitely seems lower than when I filed the bug.
,
Apr 6 2018
CCing tedchoc@ in case he knows of a CL which affected the browser control visibility logic - FullscreenManager#setPositionsForTab() and friends
,
Apr 6 2018
Yaron: The logic for whether the minimal UI is shown is really simple. If the navigation is for the same origin and the origin is secure the minimal UI won't show - Tab#handleRendererUnresponsive() looks interesting - The logic for computing the browser control offset is super complicated - I have a vague memory of the browser controls being initially visible in the WebappActivity regardless the display mode
,
Apr 6 2018
kbr@: Do you remember whether when you tapped the app icon and the WebAPK with the bad state was brought to the foreground whether you saw the splash screen in between the time that you tapped the app icon and the bad state?
,
Apr 6 2018
There has been some changes around fullscreen visibility for tab modal dialogs (i.e. javascript dialogs), but those aren't enabled for anything but tabbed mode. +huayinz handleRendererUnresponsive now goes through the tab browser offset helper, but that calls ChromeFullscreenManager#setPositionsForTabToNonFullscreen. Tangent for TabBrowserControlsOffsetHelper, but we should probably check Tab#canShowBrowserControls before forcing the browser to override the renderer value (I think this happened much after 66, so I wouldn't expect this to be the cause on beta). Maybe just add a timer for renderer unresponsive and make sure that isn't the cause. If it is, we should just ensure that Tab#canShowBrowserControls is false for webapks at that time.
,
Apr 7 2018
pkotwicz@: I recall that the splash screen did *not* come up in this state – it didn't look like the Twitter Lite PWA restarted, but rather just navigated directly to its last state, only with the wrong tab decoration. However, it's been a couple of days since I've seen this behavior (on Dev Channel, at least), so maybe we should downgrade this until it's more reproducible. There is a more serious regression in notifications with this PWA: Issue 830211 .
,
Apr 9 2018
If Tab#handleRendererUnresponsive() were to call TabBrowserControlsOffsetHelper#showAndroidControls(animate=true) instead of TabBrowserControlsOffsetHelper#showAndroidControls(animate=false) the browser controls would show The good news is that this tells us the likely state of Java vs native in the error case. This is a screenshot as a result of making the change in Tab#handleRendererUnresponsive(). Notice the position of the "Tweet" button
,
Apr 9 2018
Any more progress here? We are planning to cut the RC in few days.
,
Apr 9 2018
There's only one place that calls showAndroidControls(animate=true): Tab.onTabModalDialogStateChanged Or is that valid just not under the circumstances in which it's called there? I'm not sure this represents the bug I saw though because I believe the content was hidden under the minimal UI. cmasso: we aren't currently able to repro the situation and it's possible that it was a site error. I guess we'll unblock the train but keep digging
,
Apr 10 2018
Yaron: showAndroidControls(animate=true) is not to blame. Tab modal dialog are only shown by ChromeTabbedActivity. I am trying to understand the bug that I can repro in order to figure out the bug that I cannot repro.
,
Apr 11 2018
The toolbar is moved as a result of ChromeFullscreenManager#setPositionsForTab() The web contents are repositioned vertically as a result of CompositorView#onCompositorLayout() which is called from SingleThreadProxy::DoBeginMainFrame() I need to do more investigation into what makes things work most of the time. We should likely call CompositorViewHolder#requestRender() unconditionally from CompositorViewHolder#onControlsOffsetChanged()
,
Apr 13 2018
CCing fsamuel@ who knows a lot about how the browser controls are repositioned on Android
,
Apr 13 2018
Assigning the bug to fsamuel@. There has been a ton of churn in the viz code. The viz code is responsible for determining when a composite for the browser compositor is requested. The WebContents are repositioned vertically as a result of browser compositor composites - CompositorImpl::UpdateLayerTreeHost()
,
Jun 27 2018
This was working reliably for a while but regressed again in Chrome Dev Channel about two days ago (so around June 25). Right now Chrome Dev is: 69.0.3464.0 (Official Build) dev (32-bit) Most of the time the Twitter Lite PWA renders correctly but in some situations (which I haven't been able to reliably reproduce) it gets into the state originally reported. Dismissing the PWA from the app screen overview and reopening it makes it work correctly again. Can anyone else reliably reproduce this? The Twitter Lite PWA is one of my main uses of Chrome on Android and it's disappointing that it doesn't work reliably.
,
Jun 27 2018
,
Jun 27 2018
Haven't found a reliable repro but +1 have been seeing this again recently.
,
Jun 28 2018
Thanks for the report! Fady, ptal jeffcarp: what channel and version of chrome are you using? From server logs the twitter pwa may also have updated recently so perhaps we have an issue with or during updates. If we see this on non-dev channel this might be an explanation
,
Jun 28 2018
I'm on dev channel, 69.0.3464.0
,
Jun 28 2018
FYI I saw this again earlier today when reopening the Twitter Lite PWA from the homescreen icon after it had previously been opened. I'm pretty sure it's not related to updates of the PWA.
,
Jun 28 2018
Thanks - that's helpful. SO we need to look at binary changes
,
Jul 18
I'm unable to repro this locally.
,
Jul 18
I haven't seen this in the past couple of weeks.
,
Aug 13
I'm not sure if this is still a bug and I'm not actively looking at it so I'm unassigning myself.
,
Aug 13
Haven't seen this in a while so closing as WontFix.
,
Aug 14
We still think there's a subtle race here that's getting triggered at times. Peter's chasing issue 861618 and I suspect fixing it will fix this too
,
Dec 12
kbr: at long last issue 861618 was root-caused and fixed. Please reopen if you see this again after 73.0.3637.0 but hopefully it's all good now :)
,
Dec 12
Thank you Yaron! |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by kbr@chromium.org
, Mar 29 2018