From 10c31bc5cd9e972c5f221cef5bee8dbadd3c030a Mon Sep 17 00:00:00 2001 From: Matthias Wirth Date: Sun, 14 Mar 2021 03:12:04 +0100 Subject: [PATCH] move refreshSelected() and refreshHighlighted() from map refresh to dataChanged() rename triggerMapRefresh to triggerRefresh --- html/planeObject.js | 4 ++++ html/script.js | 21 ++++++++++----------- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/html/planeObject.js b/html/planeObject.js index a7b4517..ae11640 100644 --- a/html/planeObject.js +++ b/html/planeObject.js @@ -2519,6 +2519,10 @@ PlaneObject.prototype.dataChanged = function() { refreshSelected(); } + if (this == HighlightedPlane) { + refreshHighlighted(); + } + this.updateMarker(); } diff --git a/html/script.js b/html/script.js index 47f0bcb..8d33d76 100644 --- a/html/script.js +++ b/html/script.js @@ -105,7 +105,7 @@ let overrideMapType = null; let enableOverlays = []; let halloween = false; let noRegOnly = false; -let triggerMapRefresh = 0; +let triggerRefresh = 0; let firstDraw = true; let infoBlockWidth = baseInfoBlockWidth; @@ -390,7 +390,7 @@ function fetchData(options) { if (globeIndex) clearTimeout(refreshId); - triggerMapRefresh++; + triggerRefresh++; if (firstFetch) { firstFetch = false; if (uuid) { @@ -2491,7 +2491,7 @@ function refreshSelected() { function refreshHighlighted() { // this is following nearly identical logic, etc, as the refreshSelected function, but doing less junk for the highlighted pane - let highlighted = Planes[HighlightedPlane]; + let highlighted = HighlightedPlane; if (!highlighted) { $('#highlighted_infoblock').hide(); @@ -4125,7 +4125,7 @@ function checkRefresh() { if (showTrace) return; - if (triggerMapRefresh || zoom != refreshZoom || center[0] != refreshLon || center[1] != refreshLat) { + if (triggerRefresh || zoom != refreshZoom || center[0] != refreshLon || center[1] != refreshLat) { const ts = new Date().getTime(); const elapsed = Math.abs(ts - lastRefresh); @@ -4138,14 +4138,13 @@ function checkRefresh() { refreshZoom = zoom; refreshLat = center[1]; refreshLon = center[0]; + //console.time("refreshTable"); TAR.planeMan.refresh(); - refreshSelected(); - refreshHighlighted(); - mapRefresh(); //console.timeEnd("refreshTable"); + mapRefresh(); - triggerMapRefresh = 0; + triggerRefresh = 0; } } function mapRefresh() { @@ -4224,13 +4223,13 @@ function highlight(evt) { } ); - if (hex == HighlightedPlane) + if (HighlightedPlane && hex == HighlightedPlane.icao) return; //clearTimeout(pointerMoveTimeout); if (hex) { - HighlightedPlane = hex; + HighlightedPlane = Planes[hex]; } else { HighlightedPlane = null; } @@ -5748,7 +5747,7 @@ function play(index) { } checkMovement(); - triggerMapRefresh = 1; + triggerRefresh = 1; checkRefresh(); }