Skip to content

Commit d3c653d

Browse files
nadirlaskardarrachequesne
authored andcommittedNov 20, 2018
[docs] Add Touch Support to the whiteboard example (#3104)
1 parent a7fbd1a commit d3c653d

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed
 

‎examples/whiteboard/public/main.js

+12-6
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,12 @@
1616
canvas.addEventListener('mouseup', onMouseUp, false);
1717
canvas.addEventListener('mouseout', onMouseUp, false);
1818
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);
1925

2026
for (var i = 0; i < colors.length; i++){
2127
colors[i].addEventListener('click', onColorUpdate, false);
@@ -51,21 +57,21 @@
5157

5258
function onMouseDown(e){
5359
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;
5662
}
5763

5864
function onMouseUp(e){
5965
if (!drawing) { return; }
6066
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);
6268
}
6369

6470
function onMouseMove(e){
6571
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;
6975
}
7076

7177
function onColorUpdate(e){

0 commit comments

Comments
 (0)
Please sign in to comment.