Closed Bug 1565488 Opened 9 months ago Closed 8 months ago

Wrong panel from welcome screen is highlighted after clearing data

Categories

(Firefox for Android :: First Run, defect, P1)

ARM
Android
defect

Tracking

()

VERIFIED FIXED
Firefox 70
Tracking Status
firefox-esr68 --- verified
firefox68 --- wontfix
firefox69 --- verified
firefox70 --- verified

People

(Reporter: eliza.balazs, Assigned: brad.arant)

Details

Attachments

(1 file)

Environment:
Device:

  • Samsung Galaxy Tab S3 (Android 8);
  • Huawei Honor 8 (Android 7.0).

Build:

  • Nightly 68.1a1 (2019-07-10);
  • Nightly 70.0a1 (2019-07-11).

Precondition: The user is logged in to Sync;

Steps to reproduce:

  1. Clear Data from Android settings;
  2. Launch Fennec and slide from the "Welcome" panel to the "Privacy" panel;
  3. Observe the highlighted panel;

Expected result:
The "Privacy" panel is highlighted.

Actual result:
The "Welcome" panel remains highlighted, after sliding to the "Privacy" panel.

Notes:

Change the status for beta to have the same as nightly and release.
For more information, please visit auto_nag documentation.

Assignee: nobody → andrei.a.lazar

Hi! This is also reproducible on ESR 68.1b3 with OnePlus 5T (Android 9).

Was able to reproduce on Samsung Galaxy 8. Continuing resolution...

Un-assigning myself since Brad is going to work on this.

Assignee: andrei.a.lazar → nobody

...

Assignee: nobody → brad.arant

Hi!
This is also reproducible with the following steps:

  1. Clear data from Android settings;
  2. Disable internet connection;
  3. Launch Fennec.

Expected result:
"Welcome" panel is highlighted.

Actual result:
"Welcome" panel is not highlighted.

Notes:

  • The blue line under the panel is visible.

I am working on this and can recreate. Ill have fix shortly.

So I have discovered the issue and here are my findings:
In the TabMenuStripLayout.java object when onPageSelected(position) is executed it sets a GlobalLayoutListener on the TabMenuStripLayout and for the most part this event is firing. On the two tabbed version of the FirstrunPager for some reason this event is never firing and the text color is never updated.
if (selectedView != null) {
selectedView.setTextColor(inactiveTextColor);
}
selectedView = (TextView) getChildAt(position);
selectedView.setTextColor(activeTextColor);
selectedView is held over from previous iteration of the event handler and it was noted that a good lag is experienced. This is due to the event being fired after all screen updates are settled.

So I am trying to determine best way to fix this. I can put the above code directly on the onPageSelected and it appears to work fine (limited testing) and the lag is not present on the tab change. Other method is to instill a change to the view observer tree causing the event to fire.

I went ahead and submitted the differential to move the tab text color change to the onPageSelected method and no longer wait for the global event which sometimes does not occur. I tested as many tab screens as I could find and all appears to work well and the delay noticed in the recreation of steps no longer occurs.

Hi!
There is a similar behavior on ESR 68.1b5, Beta 69.0b11, Nightly 70.0a1 (2019-08-07) with OnePlus 5T for the Top Sites and History panels from Awesomescreen:

  1. Launch Fennec and go to about:home;
  2. Tap on the "History" panel;
  3. Tap on the "Top Sites" panel.

Expected result:
The "Top Sites" panel is highlighted.

Actual result:
The "Top Sites" panel is not highlighted.

Notes:

  • Not reproducible when taping from "History" panel to the other panels.
  • Not reproducible on RC 68.0.

Ah, I see this as well. I believe I might know what is happening in there. I will continue with a new differential under this bug report if that works for you.

Please verify that you have added patch successfully. The result of the testing I believe is without the patch applied and I was able to recreate until I applied this patch, which fixed the issue. I can resubmit patch if there is a conflict with another issue related to this area of code mentioned previously by Vlad in comment 11. That issue was fixed as well and affects a line of code immediately which may have confused the patch application.

There wasn't an uplift request to ESR so indeed this patch would not be available to test.
Brad, please file for a Beta/ESR68 approval when you get the chance.

Flags: needinfo?(brad.arant)

Comment on attachment 9081474 [details]
Bug 1565488 - Wrong panel from welcome screen is highlighted after clearing data;r?VladBaicu

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration: Requested
  • User impact if declined: Bug will remain unresolved.
  • Fix Landed on Version:
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): No new code but a reloction of existing function to correct position.
  • String or UUID changes made by this patch:
Flags: needinfo?(brad.arant)
Attachment #9081474 - Flags: approval-mozilla-esr68?
Pushed by rvandermeulen@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/9028adf52037
Wrong panel from welcome screen is highlighted after clearing data;r=VladBaicu
Status: NEW → RESOLVED
Closed: 8 months ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 70
Flags: qe-verify+

Comment on attachment 9081474 [details]
Bug 1565488 - Wrong panel from welcome screen is highlighted after clearing data;r?VladBaicu

Approved for Fennec 68.1b7.

Attachment #9081474 - Flags: approval-mozilla-esr68?
Attachment #9081474 - Flags: approval-mozilla-esr68+
Attachment #9081474 - Flags: approval-mozilla-beta+
QA Whiteboard: [qa-triaged]

I have tested the issue on Nightly 70.0a1 (2019-08-14) using a Samsung Galaxy S9 (Android 8.0.0) and the issue no longer occurs. I will mark this issue as verified in Firefox 70.

Hi, verified as fixed on Firefox 68.1b7 using Samsung Galaxy S9 (Android 8.0.0) and a Samsung Galaxy S7 (Android 7)

I have tested the issue on Beta 69.0b16 using a Pixel 3a XL (Android 9) and the issue no longer occurs. I will mark this issue as verified in Firefox 69.

Status: RESOLVED → VERIFIED
Flags: qe-verify+
QA Whiteboard: [qa-triaged]
You need to log in before you can comment on or make changes to this bug.