Skip to content

Commit

Permalink
Merge pull request #42 from ajmas/issue-41-click-drag
Browse files Browse the repository at this point in the history
Issue #41 Dragging should not change selection
  • Loading branch information
ajmas authored Dec 21, 2023
2 parents 8187295 + e257523 commit e0f547b
Showing 1 changed file with 21 additions and 2 deletions.
23 changes: 21 additions & 2 deletions src/viewer/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ import ShaderStore from './ShaderStore';
import logger from '@/utils/logger';
import { ArrowHelper, Raycaster, Vector2, Vector3 } from 'three';


class Viewer {
config: Record<string, any> = {
canvasSelector: '.viewer'
Expand All @@ -44,6 +43,7 @@ class Viewer {
earth?: Earth;
minZoom = 1;
maxZoom = 100;
mouseMoved = false;

constructor (config?: Record<string, any>) {
this.config = { ...config, ...this.config };
Expand Down Expand Up @@ -168,6 +168,23 @@ class Viewer {
this.eventManager.fireEvent('selectedSatChange', satellite);
}

onMouseMove() {
this.mouseMoved = true;
}

onMouseDown () {
this.mouseMoved = false;
window.addEventListener('mousemove', this.onMouseMove.bind(this));
}

onMouseUp (event: MouseEvent) {
if (!this.mouseMoved) {
this.onClick(event);
}
this.mouseMoved = false;
window.removeEventListener('mousemove', this.onMouseMove.bind(this));
}

onHover (event: MouseEvent) {
const canvas = this.renderer?.domElement;

Expand Down Expand Up @@ -259,7 +276,9 @@ class Viewer {
window.addEventListener('resize', this.onWindowResize.bind(this));

const canvasElement = this.renderer.domElement;
canvasElement.addEventListener('click', this.onClick.bind(this));
// canvasElement.addEventListener('click', this.onClick.bind(this));
canvasElement.addEventListener('mousedown', this.onMouseDown.bind(this));
canvasElement.addEventListener('mouseup', this.onMouseUp.bind(this));
canvasElement.addEventListener('mousemove', this.onHover.bind(this));
} catch (error) {
logger.error('Error while initialising scene', error);
Expand Down

0 comments on commit e0f547b

Please sign in to comment.