Closed Bug 613909 Opened 14 years ago Closed 14 years ago

Disable pinch gestures by default & revert three finger vertical swipe gestures

Categories

(Firefox :: General, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
Firefox 4.0b9
Tracking Status
blocking2.0 --- beta9+

People

(Reporter: jboriss, Assigned: fryn)

References

(Blocks 3 open bugs)

Details

(Whiteboard: [target-next-beta][hardblocker])

Attachments

(1 file)

Firefox gestures are currently causing problems because of the ease with which they are activated on touchpads.

The most common culprits are:

* Text resizing (two finger pinch)
* Panorama activation (three fingers down)
* Slightly less common is back (three fingers left) and forward (three fingers right)

All of the above have corresponding keyboard shortcuts.  Three finger scroll up and down used to jump from the top of the page to the bottom.

If we disable these gestures by default and add an option to Preferences to turn them on, we allow those who use these gestures to benefit while not making everyone else's text size dance around.
Bad idea for 3-finger click! Personally, I have this set up to middle click. Please stop overriding gestures which are well-known (unless you consider a 3-finger tap to be a rare case!). Let the user either configure it themselves, or use a keyboard combination.
I don’t think that is a good idea (at least on Mac OS X). Safari and a lot of other mac-apps have this gestures active by default. if you make it a preference and disable it by default most people will never notice, that the feature is even there.
Whiteboard: [target-next-beta]
Disabling two finger pinch and three finger left/right swipe will break consistency with System Preferences.

(In reply to comment #2)
> Bad idea for 3-finger click!

This bug has nothing to do with 3-finger taps and clicks.
Hardware: x86 → All
Version: unspecified → Trunk
There is a threshold controlling the pinch behaviors:

browser.gesture.pinch.threshold
(In reply to comment #4)
> Disabling two finger pinch and three finger left/right swipe will break
> consistency with System Preferences.
> 
> (In reply to comment #2)
> > Bad idea for 3-finger click!
> 
> This bug has nothing to do with 3-finger taps and clicks.

I agree. However, rather than just pointing this out, why not provide a link to a bug which does? The point of my comment was that the current implementation of Firefox's gestures is invasive.
(In reply to comment #5)
> browser.gesture.pinch.threshold

Boriss, for two finger pinches, would it be sufficient to tweak the default setting of this?

(In reply to comment #6)
It is unreasonable to assume that I know of such a bug. Find or file it. Then comment there.
(In reply to comment #7)
> 
> (In reply to comment #6)
> It is unreasonable to assume that I know of such a bug. Find or file it. Then
> comment there.
Actually, this bug is pertinent to my point - disabling the options by default.
The changes we make must be made for beta 9. However, it is my strong opinion that we're throwing the baby out with the bath water, here.

We should remove:
 - three finger swipe down/up to enter/exit Panorama (revert bug 591398)
 - text resizing, because once triggered it's hard to understand what happened and it's a permanent change

We should restore:
 - three finger swipe down/up to go to bottom/top of page

We should keep:
 - three finger left/right to go back and forward

The pros are that we get rid of the gestures we know cause problems (pinch & panorama enter/exit) and restore the ones we know are understood and used (top, bottom, left, right)
blocking2.0: --- → beta9+
I concur. Renaming bug, unless it is determined that three-finger up/down for page top/bottom and left/right for go back/forward are problematic.

There are already about:config prefs. I don't think it is necessary to expose UI in the preferences dialog for this.

The simple, most easily reversible way to disable pinch to text resize is to set the threshold to -1 and make a 1-line change to our threshold check. (We could also set the threshold to a large integer, but that's hacky.)

The alternate way is to clear the default values for the following prefs:
browser.gesture.pinch.in
browser.gesture.pinch.in.shift
browser.gesture.pinch.out
browser.gesture.pinch.out.shift

I'm going to go with the former.
Assignee: nobody → fryn
Status: NEW → ASSIGNED
Summary: Disable pinch & three finger swipes gestures by default, add pref to enable → Disable pinch & three finger vertical swipe gestures by default
(In reply to comment #10)
> The alternate way is to clear the default values for the following prefs:
> browser.gesture.pinch.in
The twist gestures already just set an empty string default:

http://mxr.mozilla.org/mozilla-central/source/browser/app/profile/firefox.js#495
495 pref("browser.gesture.twist.right", "");
(In reply to comment #11)
> (In reply to comment #10)
> > The alternate way is to clear the default values for the following prefs:
> > browser.gesture.pinch.in
> The twist gestures already just set an empty string default:
> 
> http://mxr.mozilla.org/mozilla-central/source/browser/app/profile/firefox.js#495
> 495 pref("browser.gesture.twist.right", "");

That works just as well, but it's non-obvious how to change the pref(s) to re-enable the gestures. If we don't care about how easy it is to restore the pinch to text resize, that's fine with me.
(In reply to comment #9)
> The pros are that we get rid of the gestures we know cause problems (pinch &
> panorama enter/exit) and restore the ones we know are understood and used (top,
> bottom, left, right)

Yes, this was ultimately the intent, I believe — the bug just wasn't updated for a while.

Would it be worth clearing the stored zoom preference for sites on upgrade after we disable this? It's not going to be onerous to adjust the sites you had it changed for again, and we reset it to normal size for people that are stuck in this state, and don't know how to get it back. Anecdotally, I've seen several "Firefox displays this site with really small fonts, so I have to use IE instead" cases, where the stored accidental zoom is actually what happened. 

I filed a follow-up bug 622930 for this. Note that I've restricted it to Macs, let me know if it is a common problem on Windows or Linux too.
Attached patch patchSplinter Review
(In reply to comment #11)
> (In reply to comment #10)
> > The alternate way is to clear the default values for the following prefs:
> > browser.gesture.pinch.in
> The twist gestures already just set an empty string default:
> 
> http://mxr.mozilla.org/mozilla-central/source/browser/app/profile/firefox.js#495
> 495 pref("browser.gesture.twist.right", "");

I explained in comment 12 why the other option might be better, but this way is just as simple, so based on Mardak's feedback, I used this for the patch.
Attachment #501160 - Flags: review?(dolske)
Summary: Disable pinch & three finger vertical swipe gestures by default → Disable pinch gestures by default & revert three finger vertical swipe gestures
As per today's meeting, beta 9 will be a time-based release. Marking these all betaN+. Please move it back to beta9+ if  you believe it MUST be in the next beta (ie: trunk is in an unshippable state without this)
blocking2.0: beta9+ → betaN+
(In reply to comment #15)
> As per today's meeting, beta 9 will be a time-based release. Marking these all
> betaN+. Please move it back to beta9+ if  you believe it MUST be in the next
> beta (ie: trunk is in an unshippable state without this)

(In reply to comment #9)
> The changes we make must be made for beta 9. However, it is my strong opinion
> that we're throwing the baby out with the bath water, here.

Please move this back to beta9+.
No longer blocks: 622930
Depends on: 622930
Blocks: 622930
No longer depends on: 622930
blocking2.0: betaN+ → beta9+
Attachment #501160 - Flags: ui-review?(beltzner)
What about the issue mentioned in comment 4? This might led to the feeling that Firefox is "broken".
Attachment #501160 - Flags: ui-review?(beltzner) → ui-review+
(In reply to comment #17)
> What about the issue mentioned in comment 4? This might led to the feeling that
> Firefox is "broken".

Three-finger swipe isn't changing, and I think we've already found that pinch-to-zoom does more harm than good in the browser.
Attachment #501160 - Flags: review?(dolske) → review+
http://hg.mozilla.org/mozilla-central/rev/556d2c5bef08
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 4.0b9
Whiteboard: [target-next-beta] → [target-next-beta][hardblocker]
I disagree with the thought that "pinch-to-zoom does more harm than good in the browser".

Pinch-to-zoom is a system-wide default on the Mac: many apps support it, and it makes Firefox feel broken when it doesn't work.  I think most Mac users *expect" pinch-to-zoom to work in most apps, including me.

(Especially since it *was* working until beta 9, and then silently "broke.")

Can we get this added back?  Thanks!
Permanent, unadvertised pinch-to-zoom clearly does more harm than good.  No one should be able to permanently screw up their browsing experience with a single unusual gesture.  This seems pretty obvious.

I'm neutral if you could somehow make it temporary.
Pinch-to-zoom is not unadvertised - it's the default behavior of most mac applications, including Safari and most photo apps, which most non-technical users are comfortable with.

Does anyone who doesn't like the pinch-to-zoom feature as default actually use a mac?

Or are people objecting on the principle instead of actual experience?
It's "unadvertised" in that there is no indication that you have zoomed the page, even if you return to it months or years later.  That's why it's so annoying, to users who have no idea that this feature exists, and who just find that certain websites are totally unusable.  There have been examples and complaints in the history of this and previous reports.

If it were temporary, or there were some indication, those could be reasonable solutions.  The present behavior is not, so disabling the gesture until it can be made to work in a more user-friendly way is the best short-term solution.
Is the decision to remove "pinch to zoom" based on user complains or test data?
User feedback regarding removing the pinch to zoom feature:
http://input.mozilla.com/en-US/search/?product=firefox&q=pinch

74 messages regarding this:
71 are negative of the removal
2 suggestions
1 positive writes that it works in "Safari"
I'm a Minefield nightly tester and I was bitten by this bug.  (Along with at least 36 Firefox 4 beta users http://support.mozilla.com/en-US/questions/777886#answer-131867)
Disabling a basic feature of the Mac OS X operating system, based upon the complaints of a few people who are not familiar with the features of the OS they are using, defeats the purpose of having standard features supplied by the OS, is contrary to the decision you previously reached in bug https://bugzilla.mozilla.org/show_bug.cgi?id=456520 Firefox should support Multi-Touch Gestures on Mac OS X, and is confusing to users who are aware of their OS features.

If you think this useful feature is too confusing for a lot of people, you should turn it off by an easily discovered preference rather than by a hidden configuration
From comment 0:
"If we disable these gestures by default and add an option to Preferences to
turn them on"

Was this done? If yes, where in the Preferences? If not, has there been any bug filed on this?
Trying to verify this.
Pinch to zoom is disabled
3-finger horizontal swipe goes forward/backward in browser history
3-finger vertical swipe jumps to top/bottom of page

I'm unclear from comments on what the final decision was.  Is there a config to re-enable it?

Thanks in advance for the info.
Bug 632733 was filed for adding an option in the preferences (see commnent 0)
Blocks: 632733
In the latest nightly Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:6.0a1) Gecko/20110502 Firefox/6.0a1 ID:20110502030625 resetting the pinch preferences no longer re-enables pinch gestures. Is this intentional or a regression? They still work in Aurora.

(As of 5/2, 442 people have reported pinch-zoom as a problem at https://support.mozilla.com/en-US/questions/777886)
(In reply to comment #30)
> In the latest nightly Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:6.0a1)
> Gecko/20110502 Firefox/6.0a1 ID:20110502030625 resetting the pinch preferences
> no longer re-enables pinch gestures. Is this intentional or a regression? They
> still work in Aurora.
> 
> (As of 5/2, 442 people have reported pinch-zoom as a problem at
> https://support.mozilla.com/en-US/questions/777886)

Can anyone with a Mac confirm this?
I've got a Mac (Intel Mac OS X 10.6.7) running Nightly 6.0a1 (2011-05-03) and I don't see any pinch gestures mentioned in the Preferences window (I checked all the tabs).

I have overridden the default settings for these about:config prefs, and pinch to zoom works well for me in this Nightly build:
  pref("browser.gesture.pinch.out", "cmd_fullZoomEnlarge");
  pref("browser.gesture.pinch.in", "cmd_fullZoomReduce");
  pref("browser.gesture.pinch.out.shift", "cmd_fullZoomReset");
  pref("browser.gesture.pinch.in.shift", "cmd_fullZoomReset");
Blocks: 481092
Just got a brand new macbook pro 17"... install my fav browser (firefox) and find same issue exists.  Firefox no longer my fav browser and I will be testing others today all day.

Suggestion:  This is a no brainer... leave the functionality ON by default and provide a patch that turns it OFF for all the idiots who have issues with it.  To turn this fundamental functionality off by default and make kazillions of people who use mac and firefox hunt for solutions, is a severely disrespectful waste of time and money.  The idiots at mozilla who recommended turning this off by default should be terminated and replaced immediately.  They are blatantly negligent in their role/responsibilities to mozilla.
This change broke zoom gestures on touch input displays on Windows 7 and 8.
Depends on: 740721
Depends on: 1047444
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: