Don't do history swipe animation for history.pushState and anchor jump links

NEW
Unassigned

Status

()

Core
Widget: Cocoa
P2
normal
4 years ago
5 months ago

People

(Reporter: Florian Bender, Unassigned)

Tracking

(Blocks: 2 bugs)

Trunk
x86_64
Mac OS X
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: tpi:+)

(Reporter)

Description

4 years ago
Currently, the history swipe animation is shown for all navigations. However, the UX is severly confusing for these two cases:

1. history.pushState() / popState event: 
This is used by websites/webapps to keep the URL bar up-to-date when navigation is done through JavaScript/AJAX, i.e. only parts of the currently visible page are updated thereby breaking the metaphor of "previous document". 

2. (in-page) anchor jump links: 
This is used by websites to jump from one section of a page to another section of *the same page*. Thus, the metaphor of the "previous document" does not apply here, too. 

The swipe animation however is justified by the metaphor of the "previous document": When you swipe back, you swipe the current document to the side thereby revealing the previous document (page) laying underneath. In both cases above however, the document stays the same, thereby breaking the metaphor.

Safari (iirc) does the swipe animation in both cases, but I'd argue for a better UX rather than platform consistency here (IMHO, Safari does this wrongly!). As for GitHub, they used to have an animation for the part they replaced via AJAX (the file list), which looked ridiculous and very confusing with the Safari swipe animation, interfering with the in-page animation (this basically lead to two animations being played with a slight offset). So the browser is interfering with the page behaviour here which should be up to the website to implement.

Please, disable the swipe animation for the two cases above!
(Reporter)

Updated

4 years ago
Blocks: 942589
I don't see that we can ship the swipe feature without this fixed. So either we need to fix this or we need to disable it by default.
tracking-firefox28: --- → ?
My bad, it's been disabled by default again already.
tracking-firefox28: ? → ---

Updated

6 months ago
Blocks: 1382560

Updated

6 months ago
No longer blocks: 1382560

Updated

5 months ago
Priority: -- → P2
Whiteboard: tpi:+
You need to log in before you can comment on or make changes to this bug.