W3C home > Mailing lists > Public > public-webapi@w3.org > August 2006

RE: ACTION-195: updated mousewheel/mousemultiwheel proposal

From: Doug Schepers <doug@schepers.cc>
Date: Mon, 21 Aug 2006 16:58:26 -0400
To: "'Anne van Kesteren'" <annevk@opera.com>, "'Web APIs WG (public)'" <public-webapi@w3.org>
Message-Id: <20060821205833.1BC8D11F4CF@postalmail-a4.dreamhost.com>

Hi, Anne-

Thanks for following up on this.

Anne van Kesteren wrote:
| I basically reworded some things to make it more vague and 
| leave it more up to implementors. Hopefully at some  
| point we can pinpoint more what it should be. 

As long as it is specific enough that authors can reliably code to it, I
think that's a good approach.

| ===
| When "mouse wheeling" occurs, the implementation must dispatch a  
| <code>mousemultiwheel</code> event implementing the following 
| interface:

I still prefer Bjoern's suggestion of "mouseomniwheel" since it indicates
multiple directions, rather than multiple mice.  

| wheelDeltaX is a number indicating the distance (positive 
| means rotated to  
| the right, negative means rotated to the left).

I would say "indicating the horizontal distance".

| wheelDeltaY is a number indicating the distance (positive 
| means rotated  
| away from user or to the right, negative means rotated 
| towards user or to  
| the left).

I would say "indicating the vertical distance".

| wheelDeltaZ is a number indicating the distance (...).

"wheelDeltaZ, included for future extensibility, is a number indicating the
distance along a third unspecified axis (positive means rotated away from
the user, means rotated towards user).  At the present time, imlementors may
use whatever modality is best suited to the task, such as the the use of the
wheel in conjunction with a control key."

Should we consider yoking wheelDeltaZ to zooming?

| The default value of wheelDeltaX, wheelDeltaY and wheelDeltaZ is 0.  
| UIEvent.detail must always be 0.
| XXX: wheelDeltaY -> wheelDelta?

I thought we agreed that this model is not backwards-compatible, and that we
would provide a pass-through for "mousewheel" that would use wheelDelta.

| For both <code>mousemultiwheel</code> and <code>mousewheel</code>  
| <code>MouseEvent.relatedNode</code> must point to the element being  
| wheel'd over or <code>null</code> if there is no such element. (For  
| example, when using some device without a pointer but with 
| some way to  
| wheel you'd get that.)
| ===

I like this part.  It will allow for context-specific wheel controls, like
dials and custom scrolling list, or zooming in on a particular element.

The wording could use some refining, but the intent suits me.  What about
something like, 
"For both <code>mousemultiwheel</code> and <code>mousewheel</code>,
<code>MouseEvent.relatedNode</code> must indicate the element over which the
pointer is located, or if there is no such element (in the case where the
device does not have a pointer, but does have a wheel) the current focused
element, or <code>null</code> in the absence of an element."

Received on Monday, 21 August 2006 20:59:00 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:16:21 UTC