| 
16 | 16 |   canvas.addEventListener('mouseup', onMouseUp, false);  | 
17 | 17 |   canvas.addEventListener('mouseout', onMouseUp, false);  | 
18 | 18 |   canvas.addEventListener('mousemove', throttle(onMouseMove, 10), false);  | 
 | 19 | +    | 
 | 20 | +  //Touch support for mobile devices  | 
 | 21 | +  canvas.addEventListener('touchstart', onMouseDown, false);  | 
 | 22 | +  canvas.addEventListener('touchend', onMouseUp, false);  | 
 | 23 | +  canvas.addEventListener('touchcancel', onMouseUp, false);  | 
 | 24 | +  canvas.addEventListener('touchmove', throttle(onMouseMove, 10), false);  | 
19 | 25 | 
 
  | 
20 | 26 |   for (var i = 0; i < colors.length; i++){  | 
21 | 27 |     colors[i].addEventListener('click', onColorUpdate, false);  | 
 | 
51 | 57 | 
 
  | 
52 | 58 |   function onMouseDown(e){  | 
53 | 59 |     drawing = true;  | 
54 |  | -    current.x = e.clientX;  | 
55 |  | -    current.y = e.clientY;  | 
 | 60 | +    current.x = e.clientX||e.touches[0].clientX;  | 
 | 61 | +    current.y = e.clientY||e.touches[0].clientY;  | 
56 | 62 |   }  | 
57 | 63 | 
 
  | 
58 | 64 |   function onMouseUp(e){  | 
59 | 65 |     if (!drawing) { return; }  | 
60 | 66 |     drawing = false;  | 
61 |  | -    drawLine(current.x, current.y, e.clientX, e.clientY, current.color, true);  | 
 | 67 | +    drawLine(current.x, current.y, e.clientX||e.touches[0].clientX, e.clientY||e.touches[0].clientY, current.color, true);  | 
62 | 68 |   }  | 
63 | 69 | 
 
  | 
64 | 70 |   function onMouseMove(e){  | 
65 | 71 |     if (!drawing) { return; }  | 
66 |  | -    drawLine(current.x, current.y, e.clientX, e.clientY, current.color, true);  | 
67 |  | -    current.x = e.clientX;  | 
68 |  | -    current.y = e.clientY;  | 
 | 72 | +    drawLine(current.x, current.y, e.clientX||e.touches[0].clientX, e.clientY||e.touches[0].clientY, current.color, true);  | 
 | 73 | +    current.x = e.clientX||e.touches[0].clientX;  | 
 | 74 | +    current.y = e.clientY||e.touches[0].clientY;  | 
69 | 75 |   }  | 
70 | 76 | 
 
  | 
71 | 77 |   function onColorUpdate(e){  | 
 | 
0 commit comments