touchevents.html
author Art Barstow <art.barstow@nokia.com>
Wed, 20 Mar 2013 15:32:00 -0400
branchv1
changeset 193 6f2c52cd50f6
parent 192 0edc668e7910
child 194 bb8c57f3af32
permissions -rw-r--r--
Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
     1
<!DOCTYPE html>
74
b1920268c222 Add language and viewport metadata.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 73
diff changeset
     2
<html lang="en">
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
     3
  <head>
101
2d830a098494 Initial checkin for Touch Events version 1
Matt Brubeck <mbrubeck@mozilla.com>
parents: 100
diff changeset
     4
    <title>Touch Events version 1</title>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
     5
    <meta http-equiv='Content-Type' content='text/html;charset=utf-8'/>
74
b1920268c222 Add language and viewport metadata.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 73
diff changeset
     6
    <meta name="viewport" content="width=device-width">
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
     7
    <!--
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
     8
      === NOTA BENE ===
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
     9
      For the three scripts below, if your spec resides on dev.w3 you can check them
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    10
      out in the same tree and use relative links so that they'll work offline,
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    11
     -->
180
30608da20e3d Updates for LCWD publication
Art Barstow <art.barstow@nokia.com>
parents: 176
diff changeset
    12
    <script src='https://www.w3.org/Tools/respec/respec-w3c-common.js' class='remove'></script>
30608da20e3d Updates for LCWD publication
Art Barstow <art.barstow@nokia.com>
parents: 176
diff changeset
    13
    <script type="text/javascript" class='remove'>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    14
      var respecConfig = {
180
30608da20e3d Updates for LCWD publication
Art Barstow <art.barstow@nokia.com>
parents: 176
diff changeset
    15
          // specification status (e.g. WD, LC, NOTE, etc.). If in doubt use ED.
188
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
    16
          specStatus:           "ED",
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
    17
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    18
          // the specification's short name, as in http://www.w3.org/TR/short-name/
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    19
          shortName:            "touch-events",
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    20
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    21
          // if your specification has a subtitle that goes below the main
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    22
          // formal title, define it here
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    23
          // subtitle   :  "an excellent document",
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    24
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    25
          // if you wish the publication date to be other than today, set this
188
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
    26
          publishDate:  "2013-03-20",
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    27
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    28
          // if the specification's copyright date is a range of years, specify
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    29
          // the start date here:
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    30
          // copyrightStart: "2005"
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    31
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    32
          // if there is a previously published draft, uncomment this and set its YYYY-MM-DD date
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    33
          // and its maturity status
188
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
    34
          previousPublishDate:  "2013-01-24",
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
    35
          previousMaturity:  "WD",
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    36
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    37
          // if there a publicly available Editor's Draft, this is the link
107
923f5ba58a22 v1 spec should link to v1 editors' draft.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 106
diff changeset
    38
          edDraftURI:           "http://dvcs.w3.org/hg/webevents/raw-file/v1/touchevents.html",
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    39
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    40
          // if this is a LCWD, uncomment and set the end of its review period
188
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
    41
          //lcEnd: "2013-02-14",
168
3c071d7f7be6 Update boilerplate for LC#2 on 24-Jan-2013
Art Barstow <art.barstow@nokia.com>
parents: 144
diff changeset
    42
          //crEnd: "2012-03-15",
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    43
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    44
          // if you want to have extra CSS, append them to this list
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    45
          // it is recommended that the respec.css stylesheet be kept
180
30608da20e3d Updates for LCWD publication
Art Barstow <art.barstow@nokia.com>
parents: 176
diff changeset
    46
          extraCSS:             ["http://dev.w3.org/2009/dap/ReSpec.js/css/respec.css"],
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    47
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    48
          // editors, add as many as you like
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    49
          // only "name" is required
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    50
          editors:  [
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    51
              { name: "Doug Schepers", url: "http://schepers.cc/",
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    52
                company: "W3C", companyURL: "http://w3.org/" },
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
    53
              { name: "Sangwhan Moon",
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
    54
                company: "Opera Software ASA", companyURL: "http://www.opera.com/" },
97
3f54db94ae0d ISSUE-3: Click events should be dispatched after any touch events are processed.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 96
diff changeset
    55
              { name: "Matt Brubeck", url: "http://limpet.net/mbrubeck/",
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
    56
                company: "Mozilla", companyURL: "http://www.mozilla.org/" },
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    57
          ],
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    58
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
    59
          // authors, add as many as you like.
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    60
          // This is optional, uncomment if you have authors as well as editors.
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    61
          // only "name" is required. Same format as editors.
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    62
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    63
          //authors:  [
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    64
          //    { name: "Your Name", url: "http://example.org/",
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    65
          //      company: "Your Company", companyURL: "http://example.com/" },
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    66
          //],
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
    67
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    68
          // name of the WG
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    69
          wg:           "Web Events Working Group",
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
    70
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    71
          // URI of the public WG page
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    72
          wgURI:        "http://www.w3.org/2010/webevents/",
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
    73
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    74
          // name (with the @w3c.org) of the public mailing to which comments are due
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    75
          wgPublicList: "public-webevents",
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
    76
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    77
          // URI of the patent status for this WG, for Rec-track documents
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    78
          // !!!! IMPORTANT !!!!
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    79
          // This is important for Rec-track documents, do not copy a patent URI from a random
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    80
          // document unless you know what you're doing. If in doubt ask your friendly neighbourhood
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    81
          // Team Contact.
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    82
          wgPatentURI:  "http://www.w3.org/2004/01/pp-impl/45559/status",
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    83
      };
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    84
    </script>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
    85
66
9555f231576e Fix another validation error.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 61
diff changeset
    86
    <style type="text/css">
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
    87
      .event {
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
    88
        font-family: monospace;
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
    89
        color: #459900;
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
    90
      }
23
4958878564b1 ISSUE-8: Add an initTouchEvent method.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 22
diff changeset
    91
4958878564b1 ISSUE-8: Add an initTouchEvent method.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 22
diff changeset
    92
      pre.idl {
4958878564b1 ISSUE-8: Add an initTouchEvent method.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 22
diff changeset
    93
        white-space: pre-wrap;
4958878564b1 ISSUE-8: Add an initTouchEvent method.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 22
diff changeset
    94
      }
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
    95
    </style>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    96
  </head>
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
    97
  <body>
130
80a03ddfb79b updates for 27-Oct-2011 LCWD
Art Barstow <art.barstow@nokia.com>
parents: 126
diff changeset
    98
    <section id='sotd'>
143
5bbc6e212756 Updates for publishing as a Candidate Recommendation
Art Barstow <art.barstow@nokia.com>
parents: 142
diff changeset
    99
188
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   100
     The last publication of this specification was the 
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   101
     <a href="http://www.w3.org/TR/2013/WD-touch-events-20130124/">
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   102
     24 January 2013 Last Call Working Draft</a>.
144
85cb6879da35 SotD updates for CR
Art Barstow <art.barstow@nokia.com>
parents: 143
diff changeset
   103
188
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   104
     Comments submitted against the Last Call specification are
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   105
     consolidated in a
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   106
     <a href="http://www.w3.org/2010/webevents/wiki/TouchEvents-LCWD-24-Jan-2013">
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   107
     comment tracking docuemnt</a>.  All of the comments resulted in non-normative
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   108
     changes to the specification.
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   109
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   110
     The WG has completed and approved this specification's 
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   111
     <a href="http://w3c-test.org/webevents/tests/touch-events-v1/approved/">Test Suite</a> 
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   112
     and created an 
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   113
     <a href="http://www.w3.org/2010/webevents/wiki/TEv1ImplReport">
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   114
     Implementation Report</a> that shows that two or more independent implementations 
3f81fed46a30 Status: change to ED; add link to Implementation Report and approved Test Suite
Art Barstow <art.barstow@nokia.com>
parents: 180
diff changeset
   115
     pass each test.
130
80a03ddfb79b updates for 27-Oct-2011 LCWD
Art Barstow <art.barstow@nokia.com>
parents: 126
diff changeset
   116
    </section>
80a03ddfb79b updates for 27-Oct-2011 LCWD
Art Barstow <art.barstow@nokia.com>
parents: 126
diff changeset
   117
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   118
    <section id='abstract'>
103
1a996def96f5 Editorial changes
Matt Brubeck <mbrubeck@mozilla.com>
parents: 102
diff changeset
   119
      The Touch Events specification defines a set of low-level events that
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   120
      represent one or more points of contact with a touch-sensitive surface,
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   121
      and changes of those points with respect to the surface and any DOM
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   122
      elements displayed upon it (e.g. for touch screens) or associated with it
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   123
      (e.g. for drawing tablets without displays).  It also addresses
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   124
      pen-tablet devices, such as drawing tablets, with consideration toward
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   125
      stylus capabilities.
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   126
    </section>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   127
81
e5b2d26a6892 Corrected changes clobbered due to mistake
Sangwhan Moon <smoon@opera.com>
parents: 80
diff changeset
   128
    <section id='introduction' class='informative'>
e5b2d26a6892 Corrected changes clobbered due to mistake
Sangwhan Moon <smoon@opera.com>
parents: 80
diff changeset
   129
      <h2>Introduction</h2>
e5b2d26a6892 Corrected changes clobbered due to mistake
Sangwhan Moon <smoon@opera.com>
parents: 80
diff changeset
   130
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   131
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   132
        User Agents that run on terminals which provide touch input to use web
87
4b363819e79b Edits to the introduction
Josh Soref <josh.soref@nokia.com>
parents: 86
diff changeset
   133
        applications typically use interpreted mouse events to allow users
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   134
        to access interactive web applications. However, these interpreted
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   135
        events, being normalized data based on the physical touch input, tend
87
4b363819e79b Edits to the introduction
Josh Soref <josh.soref@nokia.com>
parents: 86
diff changeset
   136
        to have limitations on delivering the intended user experience.
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   137
        Additionally, it is not possible to handle concurrent input regardless
87
4b363819e79b Edits to the introduction
Josh Soref <josh.soref@nokia.com>
parents: 86
diff changeset
   138
        of device capability, due to constraints of mouse events: both
4b363819e79b Edits to the introduction
Josh Soref <josh.soref@nokia.com>
parents: 86
diff changeset
   139
        system level limitations and legacy compatibility.
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   140
      </p>
81
e5b2d26a6892 Corrected changes clobbered due to mistake
Sangwhan Moon <smoon@opera.com>
parents: 80
diff changeset
   141
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   142
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   143
        Meanwhile, native applications are capable of handling both cases with
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   144
        the provided system APIs.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   145
      </p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   146
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   147
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   148
        The Touch Events specification provides a solution to this problem by
86
653218ffd9c4 spelling fixes
Josh Soref <josh.soref@nokia.com>
parents: 85
diff changeset
   149
        specifying interfaces to allow web applications to directly handle touch
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   150
        events, and multiple touch points for capable devices.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   151
      </p>
191
fe0ce5b66e4d As requested by the Protocols and Formats WG in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0068.html>, added a non-normative note in the Introduction that points to the PFWG's <http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping> document.
Art Barstow <art.barstow@nokia.com>
parents: 190
diff changeset
   152
fe0ce5b66e4d As requested by the Protocols and Formats WG in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0068.html>, added a non-normative note in the Introduction that points to the PFWG's <http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping> document.
Art Barstow <art.barstow@nokia.com>
parents: 190
diff changeset
   153
      <p class="note">
fe0ce5b66e4d As requested by the Protocols and Formats WG in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0068.html>, added a non-normative note in the Introduction that points to the PFWG's <http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping> document.
Art Barstow <art.barstow@nokia.com>
parents: 190
diff changeset
   154
        The W3C's <a href="http://www.w3.org/WAI/PF/">
fe0ce5b66e4d As requested by the Protocols and Formats WG in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0068.html>, added a non-normative note in the Introduction that points to the PFWG's <http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping> document.
Art Barstow <art.barstow@nokia.com>
parents: 190
diff changeset
   155
        Protocols and Formats Working Group</a> created a non-normative document 
fe0ce5b66e4d As requested by the Protocols and Formats WG in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0068.html>, added a non-normative note in the Introduction that points to the PFWG's <http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping> document.
Art Barstow <art.barstow@nokia.com>
parents: 190
diff changeset
   156
        that includes a mapping of hardware events (e.g. keyboard events) to touch 
fe0ce5b66e4d As requested by the Protocols and Formats WG in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0068.html>, added a non-normative note in the Introduction that points to the PFWG's <http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping> document.
Art Barstow <art.barstow@nokia.com>
parents: 190
diff changeset
   157
        events. For more information see 
fe0ce5b66e4d As requested by the Protocols and Formats WG in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0068.html>, added a non-normative note in the Introduction that points to the PFWG's <http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping> document.
Art Barstow <art.barstow@nokia.com>
parents: 190
diff changeset
   158
        <a href="http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping">
fe0ce5b66e4d As requested by the Protocols and Formats WG in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0068.html>, added a non-normative note in the Introduction that points to the PFWG's <http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping> document.
Art Barstow <art.barstow@nokia.com>
parents: 190
diff changeset
   159
        Touch Events Accessibility Mapping</a>.
fe0ce5b66e4d As requested by the Protocols and Formats WG in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0068.html>, added a non-normative note in the Introduction that points to the PFWG's <http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping> document.
Art Barstow <art.barstow@nokia.com>
parents: 190
diff changeset
   160
      </p>
fe0ce5b66e4d As requested by the Protocols and Formats WG in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0068.html>, added a non-normative note in the Introduction that points to the PFWG's <http://www.w3.org/WAI/PF/wiki/Touch_Events_Accessibility_Mapping> document.
Art Barstow <art.barstow@nokia.com>
parents: 190
diff changeset
   161
81
e5b2d26a6892 Corrected changes clobbered due to mistake
Sangwhan Moon <smoon@opera.com>
parents: 80
diff changeset
   162
    </section>
e5b2d26a6892 Corrected changes clobbered due to mistake
Sangwhan Moon <smoon@opera.com>
parents: 80
diff changeset
   163
28
4cbcb68446b5 First draft of a Conformance section based on the DAP WG's Contacts API:
Art Barstow <art.barstow@nokia.com>
parents: 27
diff changeset
   164
    <section id='conformance'>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   165
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   166
        This specification defines conformance criteria that apply to a single
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   167
        product: the <dfn id="dfn-user-agent">user agent</dfn> that implements
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   168
        the interfaces that it contains.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   169
      </p>
28
4cbcb68446b5 First draft of a Conformance section based on the DAP WG's Contacts API:
Art Barstow <art.barstow@nokia.com>
parents: 27
diff changeset
   170
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   171
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   172
        Implementations that use ECMAScript to implement the APIs defined in
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   173
        this specification must implement them in a manner consistent with the
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   174
        ECMAScript Bindings defined in the Web IDL specification [[!WEBIDL]] as
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   175
        this specification uses that specification and terminology.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   176
      </p>
28
4cbcb68446b5 First draft of a Conformance section based on the DAP WG's Contacts API:
Art Barstow <art.barstow@nokia.com>
parents: 27
diff changeset
   177
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   178
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   179
        A conforming implementation is required to implement all fields
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   180
        defined in this specification.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   181
      </p>
189
67417356ff2a Update WebIDL and text per request from Boris Zbarsky in:
Art Barstow <art.barstow@nokia.com>
parents: 188
diff changeset
   182
67417356ff2a Update WebIDL and text per request from Boris Zbarsky in:
Art Barstow <art.barstow@nokia.com>
parents: 188
diff changeset
   183
      <p>
67417356ff2a Update WebIDL and text per request from Boris Zbarsky in:
Art Barstow <art.barstow@nokia.com>
parents: 188
diff changeset
   184
        WindowProxy is defined in [[!HTML5]].
67417356ff2a Update WebIDL and text per request from Boris Zbarsky in:
Art Barstow <art.barstow@nokia.com>
parents: 188
diff changeset
   185
      </p>
28
4cbcb68446b5 First draft of a Conformance section based on the DAP WG's Contacts API:
Art Barstow <art.barstow@nokia.com>
parents: 27
diff changeset
   186
    </section>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   187
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   188
    <section>
46
e761aa494278 ISSUE-11: Rename TouchPoint to Touch
Matt Brubeck <mbrubeck@mozilla.com>
parents: 45
diff changeset
   189
      <h2><a>Touch</a> Interface</h2>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   190
      <p>
139
f9d12da970bf Restore missing Touch.target attribute (LC-1).
Matt Brubeck <mbrubeck@mozilla.com>
parents: 131
diff changeset
   191
        This interface describes an individual <a>touch point</a> for a touch
106
ede041c4799e Issue-16: Specify that Touch/TouchList/TouchEvent objects are immutable.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 104
diff changeset
   192
        event.  <a>Touch</a> objects are immutable; after one is created, its
ede041c4799e Issue-16: Specify that Touch/TouchList/TouchEvent objects are immutable.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 104
diff changeset
   193
        attributes must not change.
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   194
      </p>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   195
46
e761aa494278 ISSUE-11: Rename TouchPoint to Touch
Matt Brubeck <mbrubeck@mozilla.com>
parents: 45
diff changeset
   196
      <dl title='interface Touch' class='idl'>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   197
        <dt>readonly attribute long identifier</dt>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   198
        <dd>
91
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   199
          An identification number for each <a>touch point</a>.
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   200
91
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   201
          When a touch point becomes active, it must be assigned an
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   202
          <a>identifier</a> that is distinct from any other <a>active touch
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   203
          point</a>.  While the touch point remains active, all events that
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   204
          refer to it must assign it the same <a>identifier</a>.
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   205
        </dd>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   206
139
f9d12da970bf Restore missing Touch.target attribute (LC-1).
Matt Brubeck <mbrubeck@mozilla.com>
parents: 131
diff changeset
   207
        <dt>readonly attribute EventTarget target</dt>
f9d12da970bf Restore missing Touch.target attribute (LC-1).
Matt Brubeck <mbrubeck@mozilla.com>
parents: 131
diff changeset
   208
        <dd>
189
67417356ff2a Update WebIDL and text per request from Boris Zbarsky in:
Art Barstow <art.barstow@nokia.com>
parents: 188
diff changeset
   209
          The <a>EventTarget</a> on which the <a>touch point</a> started when it
139
f9d12da970bf Restore missing Touch.target attribute (LC-1).
Matt Brubeck <mbrubeck@mozilla.com>
parents: 131
diff changeset
   210
          was first placed on the surface, even if the <a>touch point</a> has
f9d12da970bf Restore missing Touch.target attribute (LC-1).
Matt Brubeck <mbrubeck@mozilla.com>
parents: 131
diff changeset
   211
          since moved outside the interactive area of that element.
f9d12da970bf Restore missing Touch.target attribute (LC-1).
Matt Brubeck <mbrubeck@mozilla.com>
parents: 131
diff changeset
   212
        </dd>
f9d12da970bf Restore missing Touch.target attribute (LC-1).
Matt Brubeck <mbrubeck@mozilla.com>
parents: 131
diff changeset
   213
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   214
        <dt>readonly attribute long screenX</dt>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   215
        <dd>
123
bee004414dba ACTION-81 - Minor editorial changes, added units for properties in Touch interface
Sangwhan Moon <smoon@opera.com>
parents: 121
diff changeset
   216
          The horizontal coordinate of point relative to the screen in pixels
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   217
        </dd>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   218
        <dt>readonly attribute long screenY</dt>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   219
        <dd>
123
bee004414dba ACTION-81 - Minor editorial changes, added units for properties in Touch interface
Sangwhan Moon <smoon@opera.com>
parents: 121
diff changeset
   220
          The vertical coordinate of point relative to the screen in pixels
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   221
        </dd>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   222
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   223
        <dt>readonly attribute long clientX</dt>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   224
        <dd>
123
bee004414dba ACTION-81 - Minor editorial changes, added units for properties in Touch interface
Sangwhan Moon <smoon@opera.com>
parents: 121
diff changeset
   225
          The horizontal coordinate of point relative to the viewport in pixels,
bee004414dba ACTION-81 - Minor editorial changes, added units for properties in Touch interface
Sangwhan Moon <smoon@opera.com>
parents: 121
diff changeset
   226
          excluding any scroll offset
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   227
        </dd>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   228
        <dt>readonly attribute long clientY</dt>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   229
        <dd>
123
bee004414dba ACTION-81 - Minor editorial changes, added units for properties in Touch interface
Sangwhan Moon <smoon@opera.com>
parents: 121
diff changeset
   230
          The vertical coordinate of point relative to the viewport in pixels,
bee004414dba ACTION-81 - Minor editorial changes, added units for properties in Touch interface
Sangwhan Moon <smoon@opera.com>
parents: 121
diff changeset
   231
          excluding any scroll offset
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   232
        </dd>
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   233
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   234
        <dt>readonly attribute long pageX</dt>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   235
        <dd>
123
bee004414dba ACTION-81 - Minor editorial changes, added units for properties in Touch interface
Sangwhan Moon <smoon@opera.com>
parents: 121
diff changeset
   236
          The horizontal coordinate of point relative to the viewport in pixels,
bee004414dba ACTION-81 - Minor editorial changes, added units for properties in Touch interface
Sangwhan Moon <smoon@opera.com>
parents: 121
diff changeset
   237
          including any scroll offset
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   238
        </dd>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   239
        <dt>readonly attribute long pageY</dt>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   240
        <dd>
123
bee004414dba ACTION-81 - Minor editorial changes, added units for properties in Touch interface
Sangwhan Moon <smoon@opera.com>
parents: 121
diff changeset
   241
          The vertical coordinate of point relative to the viewport in pixels,
bee004414dba ACTION-81 - Minor editorial changes, added units for properties in Touch interface
Sangwhan Moon <smoon@opera.com>
parents: 121
diff changeset
   242
          including any scroll offset
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   243
        </dd>
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   244
      </dl>
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   245
    </section>
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   246
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   247
    <section>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   248
      <h2><a>TouchList</a> Interface</h2>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   249
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   250
        This interface defines a list of individual points of contact for a
106
ede041c4799e Issue-16: Specify that Touch/TouchList/TouchEvent objects are immutable.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 104
diff changeset
   251
        touch event.  <a>TouchList</a> objects are immutable; after one is
ede041c4799e Issue-16: Specify that Touch/TouchList/TouchEvent objects are immutable.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 104
diff changeset
   252
        created, its contents must not change.
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   253
      </p>
192
0edc668e7910 Updates per request from Boris Zbarsky in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0087.html>.
Art Barstow <art.barstow@nokia.com>
parents: 191
diff changeset
   254
      <p>
0edc668e7910 Updates per request from Boris Zbarsky in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0087.html>.
Art Barstow <art.barstow@nokia.com>
parents: 191
diff changeset
   255
        A TouchList object's <em>supported property indices</em> ([[!WEBIDL]])
0edc668e7910 Updates per request from Boris Zbarsky in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0087.html>.
Art Barstow <art.barstow@nokia.com>
parents: 191
diff changeset
   256
        are the numbers in the range 0 to one less than the length of the list. 
0edc668e7910 Updates per request from Boris Zbarsky in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0087.html>.
Art Barstow <art.barstow@nokia.com>
parents: 191
diff changeset
   257
      </p>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   258
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   259
      <dl title='interface TouchList' class='idl'>
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   260
        <dt>readonly attribute unsigned long length</dt>
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   261
        <dd>
47
926af59e3515 Fix typos in previous commit
Matt Brubeck <mbrubeck@mozilla.com>
parents: 46
diff changeset
   262
          returns the number of <a>Touch</a>es in the list
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   263
        </dd>
189
67417356ff2a Update WebIDL and text per request from Boris Zbarsky in:
Art Barstow <art.barstow@nokia.com>
parents: 188
diff changeset
   264
        <dt>getter <a>Touch</a>? item (in unsigned long index)</dt>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   265
        <dd>
192
0edc668e7910 Updates per request from Boris Zbarsky in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0087.html>.
Art Barstow <art.barstow@nokia.com>
parents: 191
diff changeset
   266
          returns the <a>Touch</a> at the specified index in the list or
0edc668e7910 Updates per request from Boris Zbarsky in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0087.html>.
Art Barstow <art.barstow@nokia.com>
parents: 191
diff changeset
   267
          null if the index is not less than the length of the list. 
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   268
        </dd>
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   269
      </dl>
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   270
    </section>
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   271
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   272
    <section>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   273
      <h2><a>TouchEvent</a> Interface</h2>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   274
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   275
        This interface defines the <a>touchstart</a>, <a>touchend</a>,
101
2d830a098494 Initial checkin for Touch Events version 1
Matt Brubeck <mbrubeck@mozilla.com>
parents: 100
diff changeset
   276
        <a>touchmove</a>, and <a>touchcancel</a> event types.
106
ede041c4799e Issue-16: Specify that Touch/TouchList/TouchEvent objects are immutable.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 104
diff changeset
   277
        <a>TouchEvent</a> objects are immutable; after one is created and
ede041c4799e Issue-16: Specify that Touch/TouchList/TouchEvent objects are immutable.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 104
diff changeset
   278
        initialized, its attributes must not change.
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   279
      </p>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   280
6
83ce29dff849 changed cx/cy to rx/ry, defined units for both; added key modifier attributes; changed identifier to float
shepazu <schepers@w3.org>
parents: 5
diff changeset
   281
      <dl title='interface TouchEvent : UIEvent' class='idl'>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   282
        <dt>readonly attribute <a>TouchList</a> touches</dt>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   283
        <dd>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   284
          a list of <a>Touch</a>es for every point of contact currently
99
733df5b51199 Minor editorial changes
Sangwhan Moon <smoon@opera.com>
parents: 98
diff changeset
   285
          touching the surface.
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   286
        </dd>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   287
        <dt>readonly attribute <a>TouchList</a> targetTouches</dt>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   288
        <dd>
96
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   289
          a list of <a>Touch</a>es for every point of contact that is touching
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   290
          the surface <em>and</em> started on the element that is the
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   291
          <a>target</a> of the current event.
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   292
        </dd>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   293
        <dt>readonly attribute <a>TouchList</a> changedTouches</dt>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   294
        <dd>
96
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   295
          <p>
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   296
            a list of <a>Touch</a>es for every point of contact which contributed
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   297
            to the event.
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   298
          </p>
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   299
          <p>
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   300
            For the <a>touchstart</a> event this must be a list of the touch
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   301
            points that just became active with the current event.  For the
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   302
            <a>touchmove</a> event this must be a list of the touch points that
121
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   303
            have moved since the last event.  For the <a>touchend</a> and 
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   304
			<a>touchcancel</a> events this must be a list of the touch points 
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   305
			that have just been removed from the surface.
96
457c2df41b66 Add some more details about the targetTouches and changedTouches attributes.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 95
diff changeset
   306
          </p>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   307
        </dd>
23
4958878564b1 ISSUE-8: Add an initTouchEvent method.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 22
diff changeset
   308
30
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   309
        <dt>readonly attribute boolean altKey</dt>
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   310
        <dd>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   311
          <code>true</code> if the alt (Alternate) key modifier is activated;
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   312
          otherwise <code>false</code>
30
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   313
        </dd>
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   314
        <dt>readonly attribute boolean metaKey</dt>
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   315
        <dd>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   316
          <code>true</code> if the meta (Meta) key modifier is activated;
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   317
          otherwise <code>false</code>.  On some platforms this attribute may
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   318
          map to a differently-named key modifier.
30
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   319
        </dd>
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   320
        <dt>readonly attribute boolean ctrlKey</dt>
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   321
        <dd>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   322
          <code>true</code> if the ctrl (Control) key modifier is activated;
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   323
          otherwise <code>false</code>
30
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   324
        </dd>
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   325
        <dt>readonly attribute boolean shiftKey</dt>
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   326
        <dd>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   327
          <code>true</code> if the shift (Shift) key modifier is activated;
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   328
          otherwise <code>false</code>
30
795c0f6c44e7 ISSUE-12: altKey/ctrlKey/etc. should be attributes of TouchEvent, not TouchPoint
Matt Brubeck <mbrubeck@mozilla.com>
parents: 29
diff changeset
   329
        </dd>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   330
      </dl>
193
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   331
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   332
      <section class="informative">
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   333
       <h2>TouchEvent Implementer's Note</h2>
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   334
       <div class="note">
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   335
        <p>User agents should ensure that all <a>Touch</a> objects available from a given 
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   336
        <a>TouchEvent</a> are all associated to the same document that the <a>TouchEvent</a> was dispatched 
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   337
        to. To implement this, user agents should maintain a notion of the current 
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   338
        <em>touch-active</em> document. On first touch, this is set to the target document 
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   339
        where the touch was created. When all active touch points are released, the 
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   340
        <em>touch-active</em> document is cleared. All <a>TouchEvent</a>s are dispatched to the 
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   341
        current <em>touch-active</em> document, and each <a>Touch</a> object it contains refers 
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   342
        only to DOM elements (and co-ordinates) in that document. If a touch starts entirely 
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   343
        outside the currently <em>touch-active</em> document, then it is ignored entirely. </p>
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   344
       </div> 
6f2c52cd50f6 Per the request from Sangwhan Moon in <http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0037.html>, add a note for implementers regarding event target handling and documents.
Art Barstow <art.barstow@nokia.com>
parents: 192
diff changeset
   345
      </section>
100
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   346
      
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   347
      <section class="informative">
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   348
          <h2>Usage Examples</h2>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   349
          
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   350
          <p>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   351
            The examples below demonstrate the relations between the different
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   352
            <a>TouchList</a> members defined in a <a>TouchEvent</a>.
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   353
          </p>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   354
          
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   355
          <section>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   356
              <h3>touches and targetTouches of a <a>TouchEvent</a></h3>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   357
              
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   358
              <p>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   359
                This example demonstrates the utility and relations between the
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   360
                touches and targetTouches members defined in the <a>TouchEvent</a>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   361
                interface. The following code will generate different output based
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   362
                on the number of touch points on the touchable element and the document:
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   363
              </p>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   364
      
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   365
              <pre class="example">
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   366
                  &lt;div id='touchable'&gt;
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   367
                      This element is touchable.
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   368
                  &lt;/div&gt;
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   369
          
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   370
                  document.getElementById('touchable').addEventListener('touchstart', function(ev) {
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   371
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   372
                      if (ev.touches.item(0) == ev.targetTouches.item(0))
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   373
                      {
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   374
                          /**
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   375
                           * If the first touch on the surface is also targeting the
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   376
                           * "touchable" element, the code below should execute.
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   377
                           * Since targetTouches is a subset of touches which covers the
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   378
                           * entire surface, TouchEvent.touches >= TouchEvents.targetTouches
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   379
                           * is always true.
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   380
                           */
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   381
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   382
                          document.write('Hello Touch Events!');
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   383
                      }
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   384
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   385
                      if (ev.touches.length == ev.targetTouches.length)
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   386
                      {
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   387
                          /**
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   388
                           * If all of the active touch points are on the "touchable"
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   389
                           * element, the length properties should be the same.
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   390
                           */
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   391
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   392
                          document.write('All points are on target element')
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   393
                      }
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   394
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   395
                      if (ev.touches.length > 1)
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   396
                      {
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   397
                          /**
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   398
                           * On a single touch input device, there can only be one point
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   399
                           * of contact on the surface, so the following code can only
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   400
                           * execute when the terminal supports multiple touches.
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   401
                           */
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   402
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   403
                          document.write('Hello Multiple Touch!');
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   404
                      }
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   405
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   406
                  }, false);
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   407
              </pre>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   408
          </section>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   409
          
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   410
          <section>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   411
              <h3>changedTouches of a <a>TouchEvent</a></h3>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   412
              
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   413
              <p>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   414
                This example demonstrates the utility of changedTouches and it's relation
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   415
                with the other <a>TouchList</a> members of the <a>TouchEvent</a> interface.
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   416
                The code is a example which triggers whenever a touch point is removed
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   417
                from the defined touchable element:
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   418
              </p>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   419
              
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   420
              <pre class="example">
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   421
                  &lt;div id='touchable'&gt;
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   422
                      This element is touchable.
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   423
                  &lt;/div&gt;
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   424
              
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   425
                  document.getElementById('touchable').addEventListener('touchend', function(ev) {
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   426
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   427
                      /**
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   428
                       * Example output when three touch points are on the surface,
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   429
                       * two of them being on the "touchable" element and one point
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   430
                       * in the "touchable" element is lifted from the surface:
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   431
                       *
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   432
                       * Touch points removed: 1
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   433
                       * Touch points left on element: 1
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   434
                       * Touch points left on document: 2
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   435
                       */
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   436
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   437
                      document.write('Removed: ' + ev.changedTouches.length);
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   438
                      document.write('Remaining on element: ' + ev.targetTouches.length);
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   439
                      document.write('Remaining on document: ' + ev.touches.length);
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   440
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   441
                  }, false);
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   442
              </pre>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   443
          </section>
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   444
              
4bbe000815dd Initial work for Issue-18 - may need some clean-up
Sangwhan Moon <smoon@opera.com>
parents: 99
diff changeset
   445
      </section>
8
3349d49e5f46 added force attribute; added issues around InkML, units, preventDefault(), timestamp
shepazu <schepers@w3.org>
parents: 7
diff changeset
   446
126
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   447
      <section class="informative">
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   448
          <h2>List of <a>TouchEvent</a> types</h2>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   449
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   450
          <p>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   451
            The following table provides a summary of the types of possible
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   452
            <a>TouchEvent</a> types defined in this specification. All events
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   453
            should accomplish the bubbling phase. Some events are not cancelable
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   454
            (see <a>preventDefault</a>).
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   455
          </p>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   456
          
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   457
          <!--
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   458
          // FIXME: As of the time of writing, respec.js doesn't have support for
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   459
          // tables like this - we're just piggybacking on a existing class, with
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   460
          // raw markup as a quick and dirty workaround.
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   461
          -->
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   462
130
80a03ddfb79b updates for 27-Oct-2011 LCWD
Art Barstow <art.barstow@nokia.com>
parents: 126
diff changeset
   463
          <table class="parameters" id="table-event-summary">
126
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   464
          <tr>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   465
              <th>Event Type</th>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   466
              <th>Sync / Async</th>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   467
              <th>Bubbling phase</th>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   468
              <th>Trusted proximal event target types</th>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   469
              <th>DOM interface</th>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   470
              <th>Cancelable</th>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   471
              <th>Default Action</th>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   472
          </tr>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   473
          <tr> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   474
              <td><a>touchstart</a></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   475
              <td>Sync</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   476
              <td>Yes</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   477
              <td><code>Document, Element</code></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   478
              <td><a>TouchEvent</a></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   479
              <td>Yes</td> 
131
a057d31f3cc6 Change default action for touchstart and touchmove from none to undefined.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 130
diff changeset
   480
              <td>undefined</td> 
126
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   481
          </tr>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   482
          <tr> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   483
              <td><a>touchend</a></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   484
              <td>Sync</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   485
              <td>Yes</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   486
              <td><code>Document, Element</code></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   487
              <td><a>TouchEvent</a></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   488
              <td>Yes</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   489
              <td>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   490
                Varies: mousemove (If point has been moved), mousedown, 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   491
                mouseup, click
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   492
              </td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   493
          </tr>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   494
          <tr> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   495
              <td><a>touchmove</a></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   496
              <td>Sync</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   497
              <td>Yes</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   498
              <td><code>Document, Element</code></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   499
              <td><a>TouchEvent</a></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   500
              <td>Yes</td> 
131
a057d31f3cc6 Change default action for touchstart and touchmove from none to undefined.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 130
diff changeset
   501
              <td>undefined</td> 
126
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   502
          </tr>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   503
          <tr> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   504
              <td><a>touchcancel</a></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   505
              <td>Sync</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   506
              <td>Yes</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   507
              <td><code>Document, Element</code></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   508
              <td><a>TouchEvent</a></td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   509
              <td>No</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   510
              <td>none</td> 
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   511
          </tr>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   512
          </table>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   513
      </section>
121689c8a8f9 Add a single table describing all TouchEvents. Addresses ACTION-83, as a part of LC-5.
Sangwhan Moon <smoon@opera.com>
parents: 124
diff changeset
   514
 
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   515
      <section>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   516
        <h3 id="event-touchstart">The <dfn class="event">touchstart</dfn>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   517
        event</h3>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   518
        <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   519
          A user agent must dispatch this event type to indicate when the user
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   520
          places a <a>touch point</a> on the touch surface.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   521
        </p>
55
7df98116715b Clarify targeting of touchmove and touchend events, and add tests.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 54
diff changeset
   522
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   523
        <p>
93
29ec4253b862 Issue-6: Events should be dispatched to targets within frames.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 92
diff changeset
   524
          The target of this event must be an <a>Element</a>.  If the touch
29ec4253b862 Issue-6: Events should be dispatched to targets within frames.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 92
diff changeset
   525
          point is within a frame, the event should be dispatched to an element
29ec4253b862 Issue-6: Events should be dispatched to targets within frames.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 92
diff changeset
   526
          in the <a>child browsing context</a> of that frame.
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   527
        </p>
95
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   528
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   529
        <p>
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   530
          If the <a>preventDefault</a> method is called on this event, it
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   531
          should prevent any default actions caused by any touch events
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   532
          associated with the same <a>active touch point</a>, including mouse
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   533
          events or scrolling.
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   534
        </p>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   535
      </section>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   536
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   537
      <section>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   538
        <h3 id="event-touchend">The <dfn class="event">touchend</dfn> event</h3>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   539
        <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   540
          A user agent must dispatch this event type to indicate when the user
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   541
          removes a <a>touch point</a> from the touch surface, also including
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   542
          cases where the touch point physically leaves the touch surface, such
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   543
          as being dragged off of the screen.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   544
        </p>
54
be35b766b5ef Wrap some text to 80 characters.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 53
diff changeset
   545
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   546
        <p>
121
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   547
          The <a>target</a> of this event must be the same <a>Element</a> on 
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   548
		  which the <a>touch point</a> started when it was first
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   549
          placed on the surface, even if the <a>touch point</a> has since moved
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   550
          outside the interactive area of the <a>target</a> element.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   551
        </p>
55
7df98116715b Clarify targeting of touchmove and touchend events, and add tests.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 54
diff changeset
   552
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   553
        <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   554
          The <a>touch point</a> or points that were removed must be included
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   555
          in the <a>changedTouches</a> attribute of the <a>TouchEvent</a>, and
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   556
          must not be included in the <a>touches</a> and <a>targetTouches</a>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   557
          attributes.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   558
        </p>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   559
      </section>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   560
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   561
      <section>
9
8171bbe11ccc changed floats to longs; clarified definitions; added editors Moon, Brubeck; tidied ReSpec code; fixed credits; revised touchcancel event
shepazu <schepers@w3.org>
parents: 8
diff changeset
   562
        <h3 id="event-touchmove">The <dfn class="event">touchmove</dfn> event</h3>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   563
        <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   564
          A user agent must dispatch this event type to indicate when the user
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   565
          moves a <a>touch point</a> along the touch surface.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   566
        </p>
54
be35b766b5ef Wrap some text to 80 characters.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 53
diff changeset
   567
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   568
        <p>
121
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   569
          The <a>target</a> of this event must be the same <a>Element</a> on 
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   570
		  which the <a>touch point</a> started when it was first
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   571
          placed on the surface, even if the <a>touch point</a> has since moved
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   572
          outside the interactive area of the <a>target</a> element.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   573
        </p>
54
be35b766b5ef Wrap some text to 80 characters.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 53
diff changeset
   574
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   575
        <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   576
          Note that the rate at which the user agent sends <a>touchmove</a>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   577
          events is implementation-defined, and may depend on hardware
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   578
          capabilities and other implementation details.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   579
        </p>
95
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   580
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   581
        <p>
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   582
          If the <a>preventDefault</a> method is called on the <em>first</em>
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   583
          <a>touchmove</a> event of an <a>active touch point</a>, it should
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   584
          prevent any default action caused by any <a>touchmove</a> event
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   585
          associated with the same <a>active touch point</a>, such as scrolling.
80bd73a2e5b2 preventDefault recommendations for touchstart/touchmove and scrolling.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 94
diff changeset
   586
        </p>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   587
      </section>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   588
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   589
      <section>
61
d23f3a960205 Fix validation errors.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 60
diff changeset
   590
        <h3 id="event-touchcancel">The <dfn class="event">touchcancel</dfn> event</h3>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   591
        <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   592
          A user agent must dispatch this event type to indicate when a touch
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   593
          point has been disrupted in an implementation-specific manner, such as
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   594
          a synchronous event or action originating from the UA canceling the
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   595
          touch, or the touch point leaving the document window into a
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   596
          non-document area which is capable of handling user interactions.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   597
          (e.g. The UA's native user interface, plug-ins)  A user agent may
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   598
          also dispatch this event type when the user places more <a>touch
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   599
          point</a>s on the touch surface than the device or implementation is
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   600
          configured to store, in which case the earliest <a>Touch</a> object
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   601
          in the <a>TouchList</a> should be removed.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   602
        </p>
121
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   603
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   604
        <p>
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   605
          The <a>target</a> of this event must be the same <a>Element</a> on 
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   606
		  which the <a>touch point</a> started when it was first
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   607
          placed on the surface, even if the <a>touch point</a> has since moved
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   608
          outside the interactive area of the <a>target</a> element.
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   609
        </p>
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   610
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   611
        <p>
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   612
          The <a>touch point</a> or points that were removed must be included
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   613
          in the <a>changedTouches</a> attribute of the <a>TouchEvent</a>, and
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   614
          must not be included in the <a>touches</a> and <a>targetTouches</a>
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   615
          attributes.
df403a9b8ba6 Addressed ISSUE-21 and ISSUE-22.
Cathy Chan <cathy.chan@nokia.com>
parents: 120
diff changeset
   616
        </p>
5
e4446bce8960 First draft, using WebKit model
shepazu <schepers@w3.org>
parents: 4
diff changeset
   617
      </section>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   618
    </section>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   619
68
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   620
    <section>
115
a4ba6867d4d0 Extend the Document interface instead of creating a DocumentTouch interface
Matt Brubeck <mbrubeck@mozilla.com>
parents: 107
diff changeset
   621
      <h2>Extensions to the <a>Document</a> Interface</h2>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   622
      <p>
115
a4ba6867d4d0 Extend the Document interface instead of creating a DocumentTouch interface
Matt Brubeck <mbrubeck@mozilla.com>
parents: 107
diff changeset
   623
        The <a>Document</a> interface [[!DOM-LEVEL-3-CORE]] contains methods
a4ba6867d4d0 Extend the Document interface instead of creating a DocumentTouch interface
Matt Brubeck <mbrubeck@mozilla.com>
parents: 107
diff changeset
   624
        by which the user can create <a>Touch</a> and <a>TouchList</a>
a4ba6867d4d0 Extend the Document interface instead of creating a DocumentTouch interface
Matt Brubeck <mbrubeck@mozilla.com>
parents: 107
diff changeset
   625
        objects.
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   626
      </p>
68
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   627
115
a4ba6867d4d0 Extend the Document interface instead of creating a DocumentTouch interface
Matt Brubeck <mbrubeck@mozilla.com>
parents: 107
diff changeset
   628
      <dl title='partial interface Document' class='idl'>
68
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   629
        <dt>Touch createTouch()</dt>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   630
        <dd>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   631
          Creates a <a>Touch</a> object with the specified attributes.
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   632
          <dl class='parameters'>
189
67417356ff2a Update WebIDL and text per request from Boris Zbarsky in:
Art Barstow <art.barstow@nokia.com>
parents: 188
diff changeset
   633
            <dt>WindowProxy view</dt> <dd></dd>
68
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   634
            <dt>EventTarget target</dt> <dd></dd>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   635
            <dt>long identifier</dt> <dd></dd>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   636
            <dt>long pageX</dt> <dd></dd>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   637
            <dt>long pageY</dt> <dd></dd>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   638
            <dt>long screenX</dt> <dd></dd>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   639
            <dt>long screenY</dt> <dd></dd>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   640
          </dl>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   641
        </dd>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   642
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   643
        <dt>TouchList createTouchList()</dt>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   644
        <dd>
174
4d68f6253520 Fix description of touches parameter for createTouchList method
Art Barstow <art.barstow@nokia.com>
parents: 173
diff changeset
   645
          Creates a <a>TouchList</a> object consisting of zero or more <a>Touch</a> objects.
175
b38f9bc75738 Updated spec per proposal in http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0027.html
Art Barstow <art.barstow@nokia.com>
parents: 174
diff changeset
   646
          Calling this method with no arguments creates a <a>TouchList</a> with no objects in it 
b38f9bc75738 Updated spec per proposal in http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0027.html
Art Barstow <art.barstow@nokia.com>
parents: 174
diff changeset
   647
          and length 0 (zero). 
68
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   648
          <dl class='parameters'>
176
b92906399c82 Updated spec per http://lists.w3.org/Archives/Public/public-webevents/2013JanMar/0029.html
Art Barstow <art.barstow@nokia.com>
parents: 175
diff changeset
   649
            <dt>optional Touch... touches</dt> <dd></dd>
68
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   650
          </dl>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   651
        </dd>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   652
      </dl>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   653
    </section>
e8bb9dc16d4e Specify createTouch and createTouchList interfaces.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 66
diff changeset
   654
35
8624a3d5cbd7 ISSUE-9: Interaction of touch events and mouse events
Matt Brubeck <mbrubeck@mozilla.com>
parents: 34
diff changeset
   655
    <section id="mouse-events">
8624a3d5cbd7 ISSUE-9: Interaction of touch events and mouse events
Matt Brubeck <mbrubeck@mozilla.com>
parents: 34
diff changeset
   656
      <h2>Interaction with Mouse Events</h2>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   657
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   658
        The user agent may dispatch both touch events and mouse events
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   659
        [[!DOM-LEVEL-2-EVENTS]] in response to the same user input.  If the
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   660
        user agent dispatches both touch events and mouse events in response to
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   661
        a single user action, then the <a>touchstart</a> event type must be
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   662
        dispatched before any mouse event types for that action.  If the
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   663
        <a>preventDefault</a> method of <a>touchstart</a> or <a>touchmove</a>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   664
        is called, the user agent should not dispatch any mouse event that
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   665
        would be a consequential result of the the prevented touch event.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   666
      </p>
58
22e39e76033e Specify basic preventDefault behavior.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 57
diff changeset
   667
142
6130d54c79cd add editorial note requested by PFWG today
Art Barstow <art.barstow@nokia.com>
parents: 139
diff changeset
   668
      <p class="note">
6130d54c79cd add editorial note requested by PFWG today
Art Barstow <art.barstow@nokia.com>
parents: 139
diff changeset
   669
        If a Web application can process touch events, it can intercept them, 
6130d54c79cd add editorial note requested by PFWG today
Art Barstow <art.barstow@nokia.com>
parents: 139
diff changeset
   670
        and no corresponding mouse events would need to be dispatched by the 
6130d54c79cd add editorial note requested by PFWG today
Art Barstow <art.barstow@nokia.com>
parents: 139
diff changeset
   671
        user agent. If the Web application is not specifically written for 
6130d54c79cd add editorial note requested by PFWG today
Art Barstow <art.barstow@nokia.com>
parents: 139
diff changeset
   672
        touch input devices, it can react to the subsequent mouse events instead.
6130d54c79cd add editorial note requested by PFWG today
Art Barstow <art.barstow@nokia.com>
parents: 139
diff changeset
   673
      </p>
6130d54c79cd add editorial note requested by PFWG today
Art Barstow <art.barstow@nokia.com>
parents: 139
diff changeset
   674
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   675
      <p>
98
4ad645b57624 More clarification of behavior for mouse events (ISSUE-3)
Matt Brubeck <mbrubeck@mozilla.com>
parents: 97
diff changeset
   676
        If the user agent intreprets a sequence of touch events as a click,
4ad645b57624 More clarification of behavior for mouse events (ISSUE-3)
Matt Brubeck <mbrubeck@mozilla.com>
parents: 97
diff changeset
   677
        then it should dispatch <a>mousemove</a>, <a>mousedown</a>,
4ad645b57624 More clarification of behavior for mouse events (ISSUE-3)
Matt Brubeck <mbrubeck@mozilla.com>
parents: 97
diff changeset
   678
        <a>mouseup</a>, and <a>click</a> events (in that order) at the location
4ad645b57624 More clarification of behavior for mouse events (ISSUE-3)
Matt Brubeck <mbrubeck@mozilla.com>
parents: 97
diff changeset
   679
        of the <a>touchend</a> event for the corresponding touch input.  If the
4ad645b57624 More clarification of behavior for mouse events (ISSUE-3)
Matt Brubeck <mbrubeck@mozilla.com>
parents: 97
diff changeset
   680
        contents of the document have changed during processing of the touch
4ad645b57624 More clarification of behavior for mouse events (ISSUE-3)
Matt Brubeck <mbrubeck@mozilla.com>
parents: 97
diff changeset
   681
        events, then the user agent may dispatch the mouse events to a
4ad645b57624 More clarification of behavior for mouse events (ISSUE-3)
Matt Brubeck <mbrubeck@mozilla.com>
parents: 97
diff changeset
   682
        different target than the touch events.
97
3f54db94ae0d ISSUE-3: Click events should be dispatched after any touch events are processed.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 96
diff changeset
   683
      </p>
3f54db94ae0d ISSUE-3: Click events should be dispatched after any touch events are processed.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 96
diff changeset
   684
3f54db94ae0d ISSUE-3: Click events should be dispatched after any touch events are processed.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 96
diff changeset
   685
      <p>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   686
        The default actions and ordering of any further touch and mouse events
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   687
        are implementation-defined, except as specified elsewhere.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   688
      </p>
35
8624a3d5cbd7 ISSUE-9: Interaction of touch events and mouse events
Matt Brubeck <mbrubeck@mozilla.com>
parents: 34
diff changeset
   689
    </section>
8624a3d5cbd7 ISSUE-9: Interaction of touch events and mouse events
Matt Brubeck <mbrubeck@mozilla.com>
parents: 34
diff changeset
   690
10
bad00fb0d663 added identifier algorithm; added glossary; added timestamp to TouchPoint
shepazu <schepers@w3.org>
parents: 9
diff changeset
   691
    <section>
bad00fb0d663 added identifier algorithm; added glossary; added timestamp to TouchPoint
shepazu <schepers@w3.org>
parents: 9
diff changeset
   692
      <h2>Glossary</h2>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   693
10
bad00fb0d663 added identifier algorithm; added glossary; added timestamp to TouchPoint
shepazu <schepers@w3.org>
parents: 9
diff changeset
   694
      <dl>
91
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   695
        <dt><dfn>active touch point</dfn></dt>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   696
        <dd>
91
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   697
          A <a>touch point</a> which is currently on the screen and is being
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   698
          tracked by the user agent.  The touch point becomes active when the
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   699
          user agent first dispatches a <a>touchstart</a> event indicating its
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   700
          appearance.  It ceases to be active after the user agent dispatches a
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   701
          <a>touchend</a> or <a>touchcancel</a> event indicating that the touch
b2c4ba0eb943 ISSUE-15: identifier attribute should be an opaque token
Matt Brubeck <mbrubeck@mozilla.com>
parents: 87
diff changeset
   702
          point is removed from the surface or no longer tracked.
10
bad00fb0d663 added identifier algorithm; added glossary; added timestamp to TouchPoint
shepazu <schepers@w3.org>
parents: 9
diff changeset
   703
        </dd>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   704
12
183be84c0a6c defined 'touch point'
shepazu <schepers@w3.org>
parents: 11
diff changeset
   705
        <dt><dfn>touch point</dfn></dt>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   706
        <dd>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   707
          The coordinate point at which a pointer (e.g finger or stylus)
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   708
          intersects the target surface of an interface.  This may apply to a
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   709
          finger touching a touch-screen, or an digital pen writing on a piece
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   710
          of paper.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   711
        </dd>
124
a8b5ef36b865 ACTION-81 - explain preventDefault in the glossary.
Sangwhan Moon <smoon@opera.com>
parents: 123
diff changeset
   712
        
a8b5ef36b865 ACTION-81 - explain preventDefault in the glossary.
Sangwhan Moon <smoon@opera.com>
parents: 123
diff changeset
   713
        <dt><dfn>preventDefault</dfn></dt>
a8b5ef36b865 ACTION-81 - explain preventDefault in the glossary.
Sangwhan Moon <smoon@opera.com>
parents: 123
diff changeset
   714
        <dd>
a8b5ef36b865 ACTION-81 - explain preventDefault in the glossary.
Sangwhan Moon <smoon@opera.com>
parents: 123
diff changeset
   715
          If a event is cancelable, the preventDefault method is used to signify
a8b5ef36b865 ACTION-81 - explain preventDefault in the glossary.
Sangwhan Moon <smoon@opera.com>
parents: 123
diff changeset
   716
          that the event is to be canceled, and any default actions defined in the
a8b5ef36b865 ACTION-81 - explain preventDefault in the glossary.
Sangwhan Moon <smoon@opera.com>
parents: 123
diff changeset
   717
          user agent as a result of this event, or consequential events from the
a8b5ef36b865 ACTION-81 - explain preventDefault in the glossary.
Sangwhan Moon <smoon@opera.com>
parents: 123
diff changeset
   718
          canceled event will not occur. Calling this method on non-cancelable
a8b5ef36b865 ACTION-81 - explain preventDefault in the glossary.
Sangwhan Moon <smoon@opera.com>
parents: 123
diff changeset
   719
          events will have no effect.
a8b5ef36b865 ACTION-81 - explain preventDefault in the glossary.
Sangwhan Moon <smoon@opera.com>
parents: 123
diff changeset
   720
        </dd>        
10
bad00fb0d663 added identifier algorithm; added glossary; added timestamp to TouchPoint
shepazu <schepers@w3.org>
parents: 9
diff changeset
   721
      </dl>
bad00fb0d663 added identifier algorithm; added glossary; added timestamp to TouchPoint
shepazu <schepers@w3.org>
parents: 9
diff changeset
   722
    </section>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   723
71
4c4b691aab2a Add a link to the issue tracker.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 69
diff changeset
   724
    <section id='issues' class='informative'>
4c4b691aab2a Add a link to the issue tracker.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 69
diff changeset
   725
      <h2>Issues</h2>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   726
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   727
        The working group maintains <a
190
65365cf7ba57 Update URL for Open Issues
Art Barstow <art.barstow@nokia.com>
parents: 189
diff changeset
   728
         href='http://www.w3.org/2010/webevents/track/issues/open'
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   729
        >a list of open issues in this specification</a>.  These issues may be
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   730
        addressed in future revisions of the specification.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   731
      </p>
71
4c4b691aab2a Add a link to the issue tracker.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 69
diff changeset
   732
    </section>
4c4b691aab2a Add a link to the issue tracker.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 69
diff changeset
   733
4c4b691aab2a Add a link to the issue tracker.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 69
diff changeset
   734
    <section class='appendix informative'>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   735
      <h2>Acknowledgements</h2>
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   736
      <p>
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   737
        Many thanks to the WebKit engineers for developing the model used as a
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   738
        basis for this spec, Neil Roberts (SitePen) for his summary of WebKit
86
653218ffd9c4 spelling fixes
Josh Soref <josh.soref@nokia.com>
parents: 85
diff changeset
   739
        touch events, Peter-Paul Koch (PPK) for his write-ups and suggestions,
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   740
        Robin Berjon for developing the <a
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   741
          href="http://dev.w3.org/2009/dap/ReSpec.js/documentation.html"
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   742
        >ReSpec.js spec authoring tool</a>, and the WebEvents WG for their many
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   743
        contributions.
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   744
      </p>
20
3a04fe9b8ef2 Clean up some trailing whitespace and old comments.
Matt Brubeck <mbrubeck@mozilla.com>
parents: 19
diff changeset
   745
85
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   746
      <p>
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   747
        Many others have made additional comments as the spec developed, which
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   748
        have led to steady improvements.  Among them are Matthew Schinckel,
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   749
        Andrew Grieve, and Cathy Chan. If I inadvertently omitted your name,
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   750
        please let me know.
5c770b2dd992 Rewrapping whitespace
Josh Soref <josh.soref@nokia.com>
parents: 84
diff changeset
   751
      </p>
4
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   752
    </section>
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   753
  </body>
dda9bf4072d0 testing hg with Murky
shepazu <schepers@w3.org>
parents:
diff changeset
   754
</html>