@@ -9,17 +9,24 @@ import {
99let _canerase = false ;
1010let userId = "user" ;
1111
12- function handleDocumentMouseDown ( e ) {
12+ function handleDocumentDown ( e ) {
1313 _canerase = true ;
1414}
1515
16- function handleDocumentMouseUp ( e ) {
16+ function handleDocumentUp ( e ) {
1717 _canerase = false ;
1818}
1919
20+ function handleDocumentTouchMove ( e ) {
21+ erase ( findAnnotationAtPoint ( e . changedTouches [ 0 ] . clientX , e . changedTouches [ 0 ] . clientY ) ) ;
22+ }
23+
2024function handleDocumentMouseMove ( e ) {
25+ erase ( findAnnotationAtPoint ( e . clientX , e . clientY ) ) ;
26+ }
27+
28+ function erase ( target ) {
2129 if ( _canerase ) {
22- let target = findAnnotationAtPoint ( e . clientX , e . clientY ) ;
2330 if ( target && target . getAttribute ( 'data-pdf-annotate-userId' ) == userId ) {
2431 let { documentId } = getMetadata ( target . parentElement ) ;
2532 let annotationId = target . getAttribute ( 'data-pdf-annotate-id' ) ;
@@ -36,12 +43,18 @@ function handleDocumentMouseMove(e){
3643export function enableEraser ( ) {
3744 userId = PDFJSAnnotate . getStoreAdapter ( ) . userId ;
3845 document . addEventListener ( 'mousemove' , handleDocumentMouseMove ) ;
39- document . addEventListener ( 'mousedown' , handleDocumentMouseDown ) ;
40- document . addEventListener ( 'mouseup' , handleDocumentMouseUp ) ;
46+ document . addEventListener ( 'mousedown' , handleDocumentDown ) ;
47+ document . addEventListener ( 'mouseup' , handleDocumentUp ) ;
48+ document . addEventListener ( 'touchstart' , handleDocumentDown ) ;
49+ document . addEventListener ( 'touchmove' , handleDocumentTouchMove ) ;
50+ document . addEventListener ( 'touchend' , handleDocumentUp ) ;
4151}
4252
4353export function disableEraser ( ) {
4454 document . removeEventListener ( 'mousemove' , handleDocumentMouseMove ) ;
45- document . removeEventListener ( 'mousedown' , handleDocumentMouseDown ) ;
46- document . removeEventListener ( 'mouseup' , handleDocumentMouseUp ) ;
55+ document . removeEventListener ( 'mousedown' , handleDocumentDown ) ;
56+ document . removeEventListener ( 'mouseup' , handleDocumentUp ) ;
57+ document . removeEventListener ( 'touchstart' , handleDocumentDown ) ;
58+ document . removeEventListener ( 'touchmove' , handleDocumentTouchMove ) ;
59+ document . removeEventListener ( 'touchend' , handleDocumentUp ) ;
4760}
0 commit comments