Skip to content

Commit

Permalink
fix: テーブル視点操作後の意図しないコンテキストメニュー表示を防止
Browse files Browse the repository at this point in the history
  • Loading branch information
TK11235 committed Nov 2, 2022
1 parent f285219 commit 8e4c745
Showing 1 changed file with 18 additions and 0 deletions.
18 changes: 18 additions & 0 deletions src/app/component/game-table/game-table.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ export class GameTableComponent implements OnInit, OnDestroy, AfterViewInit {
}

private isTableTransformMode: boolean = false;
private isTableTransformed: boolean = false;

get isPointerDragging(): boolean { return this.pointerDeviceService.isDragging; }

Expand Down Expand Up @@ -169,6 +170,7 @@ export class GameTableComponent implements OnInit, OnDestroy, AfterViewInit {
if (750 < transformZ + this.viewPotisonZ) transformZ += 750 - (transformZ + this.viewPotisonZ);

this.setTransform(transformX, transformY, transformZ, rotateX, rotateY, rotateZ);
this.isTableTransformed = true;
}

onTableMouseStart(e: any) {
Expand Down Expand Up @@ -205,6 +207,7 @@ export class GameTableComponent implements OnInit, OnDestroy, AfterViewInit {
transformY *= scale;

this.setTransform(transformX, transformY, transformZ, rotateX, rotateY, rotateZ);
this.isTableTransformed = true;
}

cancelInput() {
Expand Down Expand Up @@ -236,6 +239,21 @@ export class GameTableComponent implements OnInit, OnDestroy, AfterViewInit {
this.contextMenuService.open(menuPosition, menuActions, this.currentTable.name);
}

@HostListener('document:mousedown', ['$event'])
onDocumentMouseDown(e: MouseEvent) {
this.isTableTransformed = false;
}

@HostListener('document:touchstart', ['$event'])
onDocumentTouchStart(e: TouchEvent) {
this.isTableTransformed = false;
}

@HostListener('document:contextmenu', ['$event'])
onDocumentContextMenu(e: MouseEvent) {
if (this.isTableTransformed && !this.pointerDeviceService.isAllowedToOpenContextMenu) e.preventDefault();
}

private setTransform(transformX: number, transformY: number, transformZ: number, rotateX: number, rotateY: number, rotateZ: number) {
this.viewRotateX += rotateX;
this.viewRotateY += rotateY;
Expand Down

0 comments on commit 8e4c745

Please sign in to comment.