As discussed in a Pointer-events working group call (http://lists.w3.org/Archives/Public/public-pointer-events/2012OctDec/0120.html), we have been approached to make a change to the DOM Level 3 Events spec.
The change is to alter the type of the MouseEvent:button attribute from an "unsigned short" to a "short" (dropping the unsigned part).
Nothing else in the DOM Level 3 Events spec would change (except perhaps some clarifying statements that mouse events only ever return values of 0 or greater for the button attribute.
The rationale behind this change is that for PointerEvent objects (which extend MouseEvent), they _do_ want to include negative values in the button attribute. This would only occur when PointerEvents were dispatched, and thus there should be no backwards compatibility problem by making this change.
I'm in favor of making this change to the spec. My only concern at this point is resetting the last call. This spec uses WebIDL normatively, so this WebIDL type change is a normative change, but behavior-wise there is no change necessary for an implementation.
Thoughts, comments from the group?