Comment 80 for bug 1228250

Revision history for this message
In , Masayuki (masayuki) wrote :

(In reply to nandhp from comment #75)
> First, my desktop still has a 1-dimensional wheel. After all, mice aren't
> the kind of gadget that have compelling reasons for people to upgrade them
> every six months.

Well, but horizontal scroll is supported on Vista or later with native message. So, all major platforms now support it in native level. I.e., the problem occurs only on WinXP or with mice or touchpads which don't support horizontal scroll. On such environment, the users really want a way of horizontal scroll by their device's vertical scroll operation? I'm not sure the strong reason why we need to implement this.

Additionally, I think that most web developers don't design such pages which needs to be scrolled horizontally. Actually, I don't use horizontal scroll in most web pages...

> > scrollable element implemented with JS is scroll normally with this patch
>
> Do you mean, it will appear to JavaScript like Shift+Up and down?

I meant that some web pages have their own scrollbar for sub frames which handle DOM wheel events. I believe that users want to scroll them horizontally with the new setting.

However, if it's enabled in default settings of Shift or something, web pages never handle raw deltaX/Y values with the modifier state. Of course, it's bad thing, though...

> Bear in
> mind that there are two separate events for capturing wheel events; one
> ignores the axis and the other does not. There is at least one webapp
> (pressdisplay.com) that requires shift+vertical scrolling because of this.
> Here's a JSfiddle that demonstrates this: http://jsfiddle.net/SXAUx/7/ .
> Also, for the axis-capable event, shift-scrolling in Chrome reports only
> horizontal wheel events (even for shift+horizontal).

On Mac, we support diagonal wheel event (i.e., both deltaX and deltaY may be not 0 of a wheel event). So, discarding native event's deltaY information does not make sense. So, just swapping deltaX and deltaY does make sense to me.

> > And I'd like to know if other browsers have this feature?
>
> Chrome has this feature. It also works in some other software, at least on
> Linux, like Evince (the GNOME PDF viewer).
>
> I still think this feature is useful, even if I don't need it myself.

If so, why don't you change the default settings? I don't think it isn't worthwhile to implement such complicated behavior only for hidden feature.

> However, I don't maintain Mozilla's scrolling code, so (speaking only for
> myself) if it's really too problematic to implement, I'm willing to concede.

I think that swapping delta values may be broken easy by any changes around wheel handling code in nsEventStateManager. If we take your patch, we have to have a lot of tests for preventing regression bugs in the future.