Home | History | Annotate | Download | only in touch
      1 <link rel="stylesheet" href="../../js/resources/js-test-style.css">
      2 <script src="../../js/resources/js-test-pre.js"></script>
      3 <style>
      4     #pusher {
      5         width: 1000px;
      6         height: 1000px;
      7         outline: 1px solid black;
      8     }
      9 </style>
     10 <div id="console"></div>
     11 <div id="testArea">
     12     <div id="pusher">This box is here to create scrollbars.</div>
     13 </div>
     14 <script src="../../js/resources/js-test-post-function.js"></script>
     15 <script>
     16     var event;
     17 
     18     function sendTouchStart(x, y)
     19     {
     20         if (window.eventSender) {
     21             eventSender.clearTouchPoints();
     22             eventSender.addTouchPoint(x, y);
     23             eventSender.touchStart();
     24         }
     25     }
     26 
     27     function zoomPageIn()
     28     {
     29         if (window.eventSender) {
     30             eventSender.zoomPageIn();
     31         }
     32     }
     33 
     34     function zoomPageOut()
     35     {
     36         if (window.eventSender) {
     37             eventSender.zoomPageOut();
     38         }
     39     }
     40 
     41     function scrollPage(x, y)
     42     {
     43         window.scrollTo(x, y);
     44     }
     45 
     46     if (window.layoutTestController) {
     47         layoutTestController.dumpAsText();
     48         layoutTestController.waitUntilDone();
     49     }
     50 
     51     // Default.
     52     function base(e)
     53     {
     54         event = e;
     55         debug("Base");
     56         shouldBe("event.touches[0].clientX", "100");
     57         shouldBe("event.touches[0].clientY", "100");
     58         shouldBe("event.touches[0].pageX", "100");
     59         shouldBe("event.touches[0].pageY", "100");
     60     }
     61 
     62     window.addEventListener("touchstart", base, false);
     63     
     64     sendTouchStart(100, 100);
     65     window.removeEventListener("touchstart", base, false);
     66     
     67     // Just zoomed.
     68     function justZoomed(e)
     69     {
     70         event = e;
     71         debug("\nJust zoomed");
     72         shouldBe("event.touches[0].clientX", "83");
     73         shouldBe("event.touches[0].clientY", "83");
     74         shouldBe("event.touches[0].pageX", "83");
     75         shouldBe("event.touches[0].pageY", "83");
     76     }
     77     window.addEventListener("touchstart", justZoomed, false);
     78     zoomPageIn();
     79     sendTouchStart(100, 100);
     80     zoomPageOut();
     81     window.removeEventListener("touchstart", justZoomed, false);
     82 
     83     // Just scrolled.
     84     function justScrolled(e)
     85     {
     86         event = e;
     87         debug("\nJust scrolled");
     88         shouldBe("event.touches[0].clientX", "100");
     89         shouldBe("event.touches[0].clientY", "100");
     90         shouldBe("event.touches[0].pageX", "150");
     91         shouldBe("event.touches[0].pageY", "150");
     92     }
     93     window.addEventListener("touchstart", justScrolled, false);
     94     scrollPage(50, 50);
     95     sendTouchStart(100, 100);
     96     scrollPage(0, 0);
     97     window.removeEventListener("touchstart", justScrolled, false);
     98 
     99     // Zoomed and scrolled.
    100     function zoomedAndScrolled(e)
    101     {
    102         event = e;
    103         debug("\nZoomed and scrolled");
    104         shouldBe("event.touches[0].clientX", "84");
    105         shouldBe("event.touches[0].clientY", "84");
    106         shouldBe("event.touches[0].pageX", "133");
    107         shouldBe("event.touches[0].pageY", "133");
    108     }
    109     window.addEventListener("touchstart", zoomedAndScrolled, false);
    110     zoomPageIn();
    111     scrollPage(50, 50);
    112     sendTouchStart(100, 100);
    113     zoomPageOut();
    114     scrollPage(0, 0);
    115     window.removeEventListener("touchstart", zoomedAndScrolled, false);
    116 
    117     if (window.eventSender) {
    118         eventSender.touchEnd();
    119         eventSender.clearTouchPoints();
    120     }
    121     
    122     if (window.layoutTestController) {
    123         var area = document.getElementById('testArea');
    124         area.parentNode.removeChild(area);
    125         successfullyParsed = true;
    126         isSuccessfullyParsed();
    127         layoutTestController.notifyDone();
    128     }
    129 </script>
    130