Undo snackbar is shown indefinitely preventing interactions with the toolbar
Categories
(Fenix :: History, defect)
Tracking
(firefox133 unaffected, firefox134+ verified, firefox135+ verified)
Tracking | Status | |
---|---|---|
firefox133 | --- | unaffected |
firefox134 | + | verified |
firefox135 | + | verified |
People
(Reporter: petru, Assigned: npoon)
References
(Regression)
Details
(Keywords: regression, Whiteboard: [fxdroid][group4])
Attachments
(4 files)
Steps to reproduce:
- while browsing open the history screen from the hamburger menu
- delete a history entry
- tap back to go to browsing while the snackbar is showing
Expected result:
- an undo snackbar appears that informs the user about the successful deletion and allows to undo the operation
- this snackbar disappears after a few seconds / allows the user to swipe it away.
Actual result:
- an undo snackbar appears that informs the user about the successful deletion and allows to undo the operation
- this snackbar stays indefinitely on the screen blocking other interactions
- tapping on "Undo" dismisses the snackbar but upon checking in history the operation has not been undone.
Reporter | ||
Comment 1•2 months ago
|
||
How the snackbar for the same scenario looks like in Release 133 ^^.
Reporter | ||
Comment 2•2 months ago
|
||
[Tracking Requested - why for this release]:
Reporter | ||
Comment 3•2 months ago
|
||
Think this was caused by bug 1924196.
Nick can you check?
Assignee | ||
Comment 4•2 months ago
|
||
Thanks Petru! I took a look into it and I think you're right - this is a regression from the bug that you mentioned
Updated•2 months ago
|
Assignee | ||
Updated•2 months ago
|
Assignee | ||
Comment 5•2 months ago
|
||
Some things that I noticed in the investigation
- When calling
allowUndo
, changing fromlifecycleScope
back toCoroutineScope(IO)
prevents the indefinite duration. I noticed that the indefinite duration only occurs when deleting a history item and navigation away from the history fragment. When deleting a history item and staying on the history fragment, the snackbar will dismiss as expected. I think the issue is that when we navigate away from the fragment, the coroutine ends (due to it being bound to the fragment's lifecycle). Then, the launched coroutine for the delay gets cancelled and the dismiss never gets called [searchfox]. - After doing this, there was another issue. Now, when navigating away from the history fragment on history item delete, the snackbar was being dismissed as expected. However, the app would crash immediately afterwards. This is the result of calling
requireContext
in the delete function in history. The function was not behaving as expected because when navigated away from history fragment, there is no fragment for the context to be attached to anymore.- This suggests that delete is only being called when the snackbar is dismissed, which is different from 133. It should be called when I hit the delete button. I can confirm that this is the case with this STR: I delete a history item, navigate away from history fragment, navigate back to history fragment. I must be able to complete all these steps before the snackbar dismisses.
- After doing this, I see that the history item is still there. Once the snackbar dismisses, I navigate away and back to the history fragment again and the item is no longer there.
Assignee | ||
Comment 6•2 months ago
|
||
Updated•2 months ago
|
Updated•2 months ago
|
Updated•1 month ago
|
Comment 9•1 month ago
|
||
bugherder |
Comment 10•1 month ago
|
||
The patch landed in nightly and beta is affected.
:npoon, is this bug important enough to require an uplift?
- If yes, please nominate the patch for beta approval.
- If no, please set
status-firefox134
towontfix
.
For more information, please visit BugBot documentation.
Assignee | ||
Comment 11•1 month ago
|
||
Ideally, after QA verification, I would like to have this uplifted but I'm aware that it's too late to uplift to beta 134 now. After the merge day, will there be a time where we can uplift beta 135 to release 134?
Comment 12•1 month ago
|
||
Yes, it could still go into one of this cycle's planned Android dot releases. Feel free to add a mozilla-release approval request whenever you're ready.
Comment 13•1 month ago
|
||
Verified as fixed on the Fenix Nightly 135.0a1 from 1/2 with a Samsung Galaxy Tab S9 Ultra (Android 14), Google Pixel 6 (Android 15), and OnePlus 5 (Android 10).
Assignee | ||
Comment 14•1 month ago
|
||
Comment on attachment 9442800 [details]
Bug 1936359 - Fix history undo snackbar on fragment change
Beta/Release Uplift Approval Request
- User impact if declined/Reason for urgency: Snackbar blocks toolbar indefinitely (until app restart) on history delete
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): I've already tested it locally and QE has verified the fix as well
- String changes made/needed:
- Is Android affected?: Yes
Assignee | ||
Comment 15•23 days ago
|
||
Hey Ryan,
I was wondering if we have any update on the uplift request. It would be nice to get this uplifted to Monday's dot release
Comment 16•23 days ago
•
|
||
The deadline for uplift requests is today. They'll be reviewed on Monday ahead of the planned dot release build. We don't land them ahead of time so we can more easily react in the event of an unplanned dot release situation.
Also, please note that Pascal is the Fx134 release owner and we can be reached in #release-coordination on Slack if you have further process questions.
https://whattrainisitnow.com/release/?version=134
Comment 17•20 days ago
|
||
Nicholas, your patch does not apply to the release branch.
Assignee | ||
Comment 18•20 days ago
|
||
Hi Pascal, this patch has been fixed for 135 so it only affects 134. When you say it does not apply, do you mean it isn't applying cleanly?
Comment 19•20 days ago
|
||
Yes, it needs rebasing for the 134 release branch
Assignee | ||
Updated•19 days ago
|
Assignee | ||
Comment 20•19 days ago
|
||
As discussed offline, I will make a new patch with the fix on bookmarks/release
and re-request uplift
Assignee | ||
Comment 21•19 days ago
|
||
Updated•19 days ago
|
Assignee | ||
Comment 22•18 days ago
|
||
Hey Pascal,
As we discussed, I put a patch out for the fix that is rebased with bookmarks/release
. The patch has been approved but it says that I need relman to approve and land it. I haven't done something like this before. Will you do this for me when working on the new dot release or do I need to request this separately somehow?
Assignee | ||
Updated•18 days ago
|
Comment 23•16 days ago
|
||
release Uplift Approval Request
- User impact if declined: Snackbar blocks toolbar indefinitely (until app restart) on history delete
- Code covered by automated testing: yes
- Fix verified in Nightly: yes
- Needs manual QE test: yes
- Steps to reproduce for manual QE testing: Delete a history item, navigate away from history fragment. Then, test that snackbar disappears. Repeat and test that the snackbar's undo action works
- Risk associated with taking this patch: Low
- Explanation of risk level: There are automated tests and I've already tested locally
- String changes made/needed: N/A
- Is Android affected?: yes
Updated•13 days ago
|
Comment 24•13 days ago
|
||
uplift |
Updated•13 days ago
|
Updated•13 days ago
|
Comment 25•12 days ago
•
|
||
I managed to reproduce the issue on an earlier build (RC 134.0.1).
Verified as fixed on the latest RC build (134.0.2).
After deleting a history item and navigating back, the undo snackbar is dismissed after a few seconds. The "Undo" button works as expected.
Devices used:
- Google Pixel 9 Pro XL (Android 15);
- Lenovo TB X606X (Android 10).
Marking the ticket as verified on 134.
Updated•12 days ago
|
Description
•