Pinch support and general improvements for mobile touch interface (#9)

This commit is contained in:
gavin
2018-08-01 01:06:02 +00:00
committed by Gitea
parent 5cb4308251
commit 584e917fc6
4 changed files with 152 additions and 49 deletions

View File

@@ -73,6 +73,7 @@ export class Tessellate {
'checkSettings',
'tap',
'move',
'pinch',
'zoom',
'pixelToTile',
'tileToPixel',
@@ -90,8 +91,11 @@ export class Tessellate {
this.onTap = new OnTap({
element: this.settings.element,
tap: this.tap,
doubletap: this.doubletap,
hold: this.hold,
move: this.move,
zoom: this.zoom
pinch: this.pinch,
zoom: this.zoom,
});
const cartographer = selectCartographer(this.settings.board, this.settings.orientation);
@@ -131,10 +135,42 @@ export class Tessellate {
this.settings.tap(tap);
}
doubletap(event) {
let point = new Point(event.offsetX, event.offsetY);
let tile = this.cartographer.pixelToTile(point);
let tap = {
event,
point,
tile
};
console.log('DOUBLETAP');
console.log(tap);
}
hold(event) {
let point = new Point(event.offsetX, event.offsetY);
let tile = this.cartographer.pixelToTile(point);
let tap = {
event,
point,
tile
};
console.log('HOLD');
console.log(tap);
}
move(event) {
this.cartographer.move(event);
}
pinch(event) {
this.cartographer.pinch(event);
}
zoom(event) {
this.cartographer.zoom(event);
}