-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Swipe left/right on site to go backward/forward in tab history #12327
Comments
Some considerations:
|
This is what chrome's gesture looks like after setting chrome://flags/#overscroll-history-navigation to "Enabled Navigation Sheet": https://streamable.com/uljnbl Chrome's gesture only triggers when swiping from the edge of the screen so it doesn't work with Android 10 gestures. I wonder why they restrict it to the edge of the screen 🤔 |
would we be able to get this to work with gesture based navigation? |
I think if we expose an API in From the Fenix side, #12174 implements the code that would allow us to intercept swipes from anywhere. So it should be doable if everything goes right on the A-C side and I can get the touch events to propagate correctly. |
@person808 @boek One of my concerns about adding this gesture is the potential conflict with Android 10’s indiscriminate back gesture. As far as I’m aware, Chrome elects not to do swipe-to-navigate if the system already does gesture navigation, providing only a forward button in the main menu. My recommendation is the same: if Android provides gesture navigation, let’s not implement our own swipe. Except there are a few additions:
On the other hand, if Android provides 2-button or 3-button navigation, only then should we implement our own custom swipe-to-navigate. The same additions are also present here:
Does this behaviour sound sensible to you? If it is, then we can design a UI for it – I think Chrome’s is a good starting point, but we already have a pull-to-refresh, and can use the same circle size/background for this history navigation. |
This behavior is really consistent between gesture and button navigation but also with desktop. 👍 Is it possible to use Android 10's gesture navigation and receive the "hold" event or do you have to handle it inside Fenix using custom UI and disable the back gesture provided by Android 10 ? |
@brampitoyo In general, that makes sense to me. I have some eng concerns with swipe-to-navigate and the history stack. I'll focus on the swipe-to-navigate gesture here and keep everything related to the history stack in #1048. For swiping to go forward/back when system gestures are disabled, I think we should hold off on implementing this until pull-to-refresh is fixed. The fixes for pull-to-refresh from GeckoView will likely enable this gesture to be implemented. So this issue is blocked by GeckoView. |
To me the "Safari style" with previews is the best implementation, with a pixel by pixel gesture. This would also allow to peak at the previus (or next) webpage in history in case of need, without actually going back and forward. It also gives a more natural and coutinous feeling for the browsing experience. Either way I think it's very important for the gesture to be implemented. Not so many people are using Android 10, I would say it's a great minority, so very little people uses the Android built-in gestures and it would mean a great Plus Factor for Firefox in comparison to other browsers. |
Thanks @person808. This issue is now ready for Engineering to work on. I know that we’d only be able to test how this feature “feels” after the code has landed. Let me know when this happens. We can then test it and make sure that it feels just right. |
Unassigning myself because I think that it is best to wait for the remaining pull-to-refresh issues to be fixed before we add another gesture that handles touch events over web pages. Unfortunately, its highly unlikely pull-to-refresh will be fixed before I have to return to school. |
I've noticed pull down to refresh has been added on nightly. Is development progressing on this one? Thank you! |
See: #17373 This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
dont know how many years will it take to firefox team to develop this feature |
Good question, I don't understand why it is not considered a priority |
There is also a request for text reflow posted in 2019, still not considered to implement. |
Even if the user has Android configured for gesture navigation, I think Firefox should still handle right swiping to go forward, since that is not natively supported. |
This gesture is already enabled in the stable versions of Brave, Chrome, Edge, and Vivaldi. |
Moved to bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1807052 Change performed by the Move to Bugzilla add-on. |
Edit: Roadmap for what needs to be done
Broken out from #176
What is the user problem or growth opportunity you want to see solved?
There is no gesture to go back and forward in a tab's history. Going back requires pressing the back button and going forward requires opening the three dot menu.
One solution is to add a gesture to swipe left/right on a site to navigate backward/forward in tab history.
How do you know that this problem exists today? Why is this important?
Currently, going back and forward in a tab's history requires moving your finger down to the toolbar or navigation bar. Android 10 gestures reduce the movement for going back, but not everyone has gesture navigation enabled.
IIRC, Safari on iOS has this gesture. Desktop browsers often allow a two-finger swipe on a touchpad to perform these actions.
Firefox on Mac:
Who will benefit from it?
People who use gestures to navigate, especially on larger devices.
┆Issue is synchronized with this Jira Task
The text was updated successfully, but these errors were encountered: