X-Git-Url: https://git-public.kairo.at/?p=lantea.git;a=blobdiff_plain;f=js%2Fui.js;h=fbc8f3d289c01cbdc6354bc89e16422bdaa4806b;hp=c2f64af6871f19ef2aa58580807a733e8163e1ac;hb=123b314299fa2aca307823c3ccec6139a4282e74;hpb=41e2dba2ac81dfd8eba2aafa05709fead8dc8f07 diff --git a/js/ui.js b/js/ui.js index c2f64af..fbc8f3d 100644 --- a/js/ui.js +++ b/js/ui.js @@ -7,6 +7,7 @@ window.indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndex window.requestAnimationFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame; var mainDB; +var gAppInitDone = false; var gUIHideCountdown = 0; var gWaitCounter = 0; var gAction, gActionLabel; @@ -66,7 +67,9 @@ function postInit(aEvent) { gAction.removeEventListener(aEvent.type, postInit, false); console.log("init done, draw map."); gMapPrefsLoaded = true; - gMap.resizeAndDraw(); + gAppInitDone = true; + //gMap.resizeAndDraw(); <-- HACK: This triggers bug 1001853, work around with a delay. + window.setTimeout(gMap.resizeAndDraw, 100); gActionLabel.textContent = ""; gAction.style.display = "none"; setTracking(document.getElementById("trackCheckbox")); @@ -141,6 +144,11 @@ function showUI() { function maybeHideUI() { gUIHideCountdown--; + if (!document.getElementById("trackArea").classList.contains("hidden")) { + // If track area is visible, update track data. + document.getElementById("trackLength").textContent = calcTrackLength().toFixed(1); + document.getElementById("trackDuration").textContent = Math.round(calcTrackDuration()/60); + } if (gUIHideCountdown <= 0) { var areas = document.getElementsByClassName('overlayArea'); for (var i = 0; i <= areas.length - 1; i++) { @@ -154,23 +162,23 @@ function maybeHideUI() { function toggleTrackArea() { var fs = document.getElementById("trackArea"); - if (fs.style.display != "block") { - fs.style.display = "block"; + if (fs.classList.contains("hidden")) { + fs.classList.remove("hidden"); showUI(); } else { - fs.style.display = "none"; + fs.classList.add("hidden"); } } function toggleSettings() { var fs = document.getElementById("settingsArea"); - if (fs.style.display != "block") { - fs.style.display = "block"; + if (fs.classList.contains("hidden")) { + fs.classList.remove("hidden"); showUI(); } else { - fs.style.display = "none"; + fs.classList.add("hidden"); } }