New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 651404 link

Starred by 3 users

Issue metadata

Status: Assigned
Owner:
Cc:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

Download button and Downloads menu item not shown on first browser run

Project Member Reported by mdw@chromium.org, Sep 29 2016

Issue description

Version: 55.0.2868.0
OS: Android LMY47D
Device: Lava A82

What steps will reproduce the problem?
(0) Be in India.
(1) Run Chrome M55 for the first time.
(2) Go through FRE.
(3) Load a page or two.
(4) Tap on three dots menu.

What is the expected output?

The download button and 'Downloads' menu item should be shown.

What do you see instead?

These items are not shown. Re-starting Chrome causes them to show up. They should appear on the first run of the browser.



 

Comment 1 by mdw@chromium.org, Sep 29 2016

Components: UI>Browser>Downloads

Comment 2 by dah...@chromium.org, Sep 29 2016

Cc: dah...@chromium.org twelling...@chromium.org qin...@chromium.org dfalcant...@chromium.org
Owner: ----
Status: Untriaged (was: Assigned)
Clank frontend team, any ideas why this wouldn't show up on first run on M55?
It's Finched, defaulted to off.  Finch never works on the first run because we haven't had a chance to get the flags yet.

Comment 4 by mdw@chromium.org, Sep 30 2016

Cc: talo@chromium.org
The challenge here is that we are starting to use Finch targeting more and more for country-specific features. I worry that if Finch has this limitation that we're going to run into problems with users not seeing the right behavior when we expect them to. This already creates problems for the first run promos that we show for Data Saver, for exsmple.

I don't know anything about how Finch works internally, but it seems to me the config can be fetched in approximately two network round-trip times, which should be possible to do in parallel with the initial stages of the FRE. So in most cases I would expect the client to be able to get the Finch config well before any Finch-controlled features would be visible anyway. Is this possible?



You'd need to ask the Finch folks for more specific details on that.  Maybe asvitkine@?
Just realized that another complication is when a feature needs to know whether a Finch flag is set before native has been loaded.  In many cases we've had to cache the Finch flag on the Java side so that it's available on startup (Download Home included).  We might want to re-cache after we know updated Finch experiments have come in.
 Issue 675302  has been merged into this issue.
In case of DownloadUI, which is not country-specific, is there a reason not to just change the feature to ENABLED_BY_DEFAULT and use Finch as a potential 'kill switch' only? 
Kill switches aren't great if you've got a feature that's easily triggered and can cause crashes before the kill switch flag can be retrieved from the server.  For download UI related stuff, we're probably fine because we're just showing or hiding two menu items when the menu pops open.  Don't know who decides when this should be flipped to ENABLED_BY_DEFAULT, but it's probably one of the PMs.
Cc: -qin...@chromium.org -twelling...@chromium.org -aposner@chromium.org -talo@chromium.org -dfalcant...@chromium.org dtrainor@chromium.org
Components: -UI>Browser>Downloads
Owner: tedc...@chromium.org
Status: Assigned (was: Untriaged)
This impacts all finch configured UX, so it isn't localized to downloads.

Ted, it looks like finch is not properly initialized until the next run. Should we consider restarting after the first run experience? Alternatively, would it make more sense to try to fix this on the finch side. dtrainor will come talk to you.
Cc: tedc...@chromium.org
Owner: asvitk...@chromium.org
@Alexei, will your changes to load the finch seed before first run fix this?  That is targeted towards 57 right?
I think so - assuming it's just querying the native API after native has been loaded. Not sure if there's additional complexity due to any special caching that the feature does as comment 6 alludes to. If there is, that might need to be adjusted.

Otherwise, it should just work in M57.
Cc: asvitk...@chromium.org
Owner: dfalcant...@chromium.org
Assigning to Dan as the relevant feature owner to double check its implementation per comment 12.

But this might just working now because it could just work as of M57 where we fetch Finch seed on first run.
The problem is that native isn't always loaded when a Finch flag needs to be checked, like when Chrome's trying to figure out what Activity to start up for a given Intent.  That's the more general case though‒in this case whatever you've landed might address it.
Cc: dfalcant...@chromium.org
Owner: dtrainor@chromium.org
Status: Untriaged (was: Assigned)
Status: Assigned (was: Untriaged)

Sign in to add a comment