Open Bug 1873454 Opened 1 years ago Updated 1 year ago

Backwards button unclickable after download

Categories

(GeckoView :: General, defect)

defect

Tracking

(firefox127 affected)

Tracking Status
firefox127 --- affected

People

(Reporter: emily, Unassigned)

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:123.0) Gecko/20100101 Firefox/123.0
Firefox for Android

Steps to reproduce:

  1. download a file
  2. back button not working
    (check attachment video)

Actual results:

back button unclickable

Expected results:

back button working

The Bugbug bot thinks this bug should belong to the 'Core::Widget: Gtk' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Widget: Gtk
Product: Firefox → Core
Component: Widget: Gtk → General
Product: Core → Fenix

Looks like related to beforeunload event

https://modrinth.com/_nuxt/entry.deb546fb.js

  function u() {
    const {
      history: p
    }
    = window;
    p.state &&
    p.replaceState(de({
    }, p.state, {
      scroll: Cs()
    }), '')
  }
  function f() {
    for (const p of s) p();
    s = [],
    window.removeEventListener('popstate', i),
    window.removeEventListener('beforeunload', u)
  }
  return window.addEventListener('popstate', i),
  window.addEventListener('beforeunload', u, {
    passive: !0
  }),
  {
    pauseListeners: l,
    listen: c,
    destroy: f
  }


firingBeforeUnload is true when IsNavigationAllowed is called inside GetCanGoBack

Product: Fenix → GeckoView

I think i may have some ideas:

  1. After clicking the download link , the beforeunload event is calling , so firingBeforeUnload is set to true
  2. In the beforeunload event , pushState is called , so Geckoview:locationchange is emitted (with cangoback) , in the message of Geckoview:locationchange , cangoback's is set to false (GetCanGoback returns false because of firingBeforeUnload is true in IsNavigationAllowed )
  3. After beforeunload event, firingBeforeUnload is set to false.

The severity field is not set for this bug.
:owlish, could you have a look please?

For more information, please visit BugBot documentation.

Flags: needinfo?(bugzeeeeee)
Severity: -- → S2
Flags: needinfo?(bugzeeeeee)
Status: UNCONFIRMED → NEW
Ever confirmed: true
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: