Abstract

This document defines extensions to the Touch Events specification that have been implemented by one or more browsers.

We recommend that user agents implement the Touch Events Recommendation and/or the newer Pointer Events specification instead.

This document is no longer being developed.

Status of This Document

This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.

This is the 31 October 2013 Working Group Note of "Touch Events Extensions". The W3C Membership and other interested parties are invited to review the document. If you wish to make comments regarding this document, please send them to [email protected] (subscribe, public archive). All comments are welcome.

This document was developed by the Web Events Working Group. This Working Group will not advance this Working Group Note to Recommendation Status.

Publication as a Working Group Note does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.

This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.

Table of Contents

1. Introduction

This section is non-normative.

This document defines extensions to the Touch Events specification that have been implemented by one or more browsers.

2. Touch Interface

This section defines extensions to the Touch interface defined in [TOUCH-EVENTS].

partial interface Touch {
    readonly    attribute float radiusX;
    readonly    attribute float radiusY;
    readonly    attribute float rotationAngle;
    readonly    attribute float force;
};

2.1 Attributes

force of type float, readonly
a relative value of pressure applied, in the range 0 to 1, where 0 is no pressure, and 1 is the highest level of pressure the touch device is capable of sensing; 0 if no value is known. In environments where force is known, the absolute pressure represented by the force attribute, and the sensitivity in levels of pressure, may vary.
Issue 1

Issue: Consider aligning with other "channels" and values from Ink Markup Language (InkML), in addition to force, e.g. adding angle, clientZ, rotation, etc.

radiusX of type float, readonly
the radius of the ellipse which most closely circumscribes the touching area (e.g. finger, stylus) along the axis indicated by rotationAngle, in CSS pixels of the same scale as screenX; 0 if no value is known. The value must not be negative.
radiusY of type float, readonly
the radius of the ellipse which most closely circumscribes the touching area (e.g. finger, stylus) along the axis perpendicular to that indicated by rotationAngle, in CSS pixels of the same scale as screenY; 0 if no value is known. The value must not be negative.
rotationAngle of type float, readonly

the angle (in degrees) that the ellipse described by radiusX and radiusY is rotated clockwise about its center; 0 if no value is known. The value must be greater than or equal to 0 and less than 90.

If the ellipse described by radiusX and radiusY is circular, then rotationAngle has no effect. The user agent may use 0 as the value in this case, or it may use any other value in the allowed range. (For example, the user agent may use the rotationAngle value from the previous touch event, to avoid sudden changes.)

3. TouchList Interface

This section defines an extension to the TouchList interface defined in [TOUCH-EVENTS].

partial interface TouchList {
    Touch? identifiedTouch (long identifier);
};

3.1 Methods

identifiedTouch
returns the first Touch item in the list whose identifier property matches the specified identifier or null if there is no match
ParameterTypeNullableOptionalDescription
identifier long
Return type: Touch, null

4. Issues

This section is non-normative.

The working group maintains a list of open issues for its documents.

A. Acknowledgements

This section is non-normative.

Many thanks to the WebKit engineers for developing the model used as a basis for this document and to the members of the Web Events Working Group.

B. References

B.1 Normative references

[TOUCH-EVENTS]
Doug Schepers; Sangwhan Moon; Matt Brubeck; Arthur Barstow. Touch Events. 10 October 2013. W3C Recommendation. URL: http://www.w3.org/TR/touch-events/