mirror of
				https://github.com/gpxstudio/gpx.studio.git
				synced 2025-11-04 05:21:09 +00:00 
			
		
		
		
	fix ctrl+click on gpx layer, relates to #91
This commit is contained in:
		@@ -81,6 +81,7 @@ export class GPXLayer {
 | 
			
		||||
    layerOnMouseEnterBinded: (e: any) => void = this.layerOnMouseEnter.bind(this);
 | 
			
		||||
    layerOnMouseLeaveBinded: () => void = this.layerOnMouseLeave.bind(this);
 | 
			
		||||
    layerOnClickBinded: (e: any) => void = this.layerOnClick.bind(this);
 | 
			
		||||
    layerOnContextMenuBinded: (e: any) => void = this.layerOnContextMenu.bind(this);
 | 
			
		||||
    maybeHideWaypointPopupBinded: (e: any) => void = this.maybeHideWaypointPopup.bind(this);
 | 
			
		||||
 | 
			
		||||
    constructor(map: mapboxgl.Map, fileId: string, file: Readable<GPXFileWithStatistics | undefined>) {
 | 
			
		||||
@@ -153,6 +154,7 @@ export class GPXLayer {
 | 
			
		||||
                });
 | 
			
		||||
 | 
			
		||||
                this.map.on('click', this.fileId, this.layerOnClickBinded);
 | 
			
		||||
                this.map.on('contextmenu', this.fileId, this.layerOnContextMenuBinded);
 | 
			
		||||
                this.map.on('mouseenter', this.fileId, this.layerOnMouseEnterBinded);
 | 
			
		||||
                this.map.on('mouseleave', this.fileId, this.layerOnMouseLeaveBinded);
 | 
			
		||||
            }
 | 
			
		||||
@@ -302,6 +304,7 @@ export class GPXLayer {
 | 
			
		||||
    remove() {
 | 
			
		||||
        if (get(map)) {
 | 
			
		||||
            this.map.off('click', this.fileId, this.layerOnClickBinded);
 | 
			
		||||
            this.map.off('contextmenu', this.fileId, this.layerOnContextMenuBinded);
 | 
			
		||||
            this.map.off('mouseenter', this.fileId, this.layerOnMouseEnterBinded);
 | 
			
		||||
            this.map.off('mouseleave', this.fileId, this.layerOnMouseLeaveBinded);
 | 
			
		||||
            this.map.off('style.import.load', this.updateBinded);
 | 
			
		||||
@@ -382,6 +385,12 @@ export class GPXLayer {
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    layerOnContextMenu(e: any) {
 | 
			
		||||
        if (e.originalEvent.ctrlKey) {
 | 
			
		||||
            this.layerOnClick(e);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    showWaypointPopup(waypoint: Waypoint) {
 | 
			
		||||
        if (get(currentPopupWaypoint) !== null) {
 | 
			
		||||
            this.hideWaypointPopup();
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user