From 54dc91adc5bba41702f3b3c60e66ddde5a6c2ab6 Mon Sep 17 00:00:00 2001 From: Oliver Jowett Date: Sat, 2 Jul 2016 18:10:37 +0100 Subject: [PATCH] Make table selection a little more robust. --- public_html/script.js | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/public_html/script.js b/public_html/script.js index e0c3f33..697fdaf 100644 --- a/public_html/script.js +++ b/public_html/script.js @@ -89,8 +89,15 @@ function processReceiverUpdate(data) { $('img', plane.tr.cells[1]).css('display', 'none'); } - plane.tr.addEventListener('click', selectPlaneByHex.bind(undefined,hex,false)); - plane.tr.addEventListener('dblclick', selectPlaneByHex.bind(undefined,hex,true)); + plane.tr.addEventListener('click', function(h, evt) { + selectPlaneByHex(h, false); + evt.preventDefault(); + }.bind(undefined, hex)); + + plane.tr.addEventListener('dblclick', function(h, evt) { + selectPlaneByHex(h, true); + evt.preventDefault(); + }.bind(undefined, hex)); Planes[hex] = plane; PlanesOrdered.push(plane); @@ -813,8 +820,9 @@ function selectPlaneByHex(hex,autofollow) { $(Planes[SelectedPlane].tr).removeClass("selected"); } - // If we are clicking the same plane, we are deselected it. - if (SelectedPlane === hex) { + // If we are clicking the same plane, we are deselecting it. + // (unless it was a doubleclick..) + if (SelectedPlane === hex && !autofollow) { hex = null; }