From e4e90dab290e107b07719f9abee9b2558ab286c9 Mon Sep 17 00:00:00 2001 From: Arlen Johnson Date: Mon, 22 Aug 2022 08:29:45 -0400 Subject: [PATCH] Skip display of loading animation when CMD, CTRL, or SHIFT is pressed (CO-2488) --- app/templates/element/javascript.php | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/app/templates/element/javascript.php b/app/templates/element/javascript.php index 97f28c837..616b26222 100644 --- a/app/templates/element/javascript.php +++ b/app/templates/element/javascript.php @@ -153,13 +153,16 @@ // Add loading animation when a form is submitted, when any item with a "spin" class is clicked, // or on any anchor tag lacking the .nospin class. We do not automatically add this to buttons // because they are often on-page controls. Add a "spin" class to buttons that need it. - $("input[type='submit'], a:not('.nospin'), .spin").click(function() { + $("input[type='submit'], a:not('.nospin'), .spin").click(function(e) { - displaySpinner(); + // Start a spinner only if CTRL, CMD, or SHIFT is not pressed (which loads a new tab or window). + if(!(e.ctrlKey || e.metaKey || e.shiftKey)) { + displaySpinner(); - // Test for invalid fields (HTML5) and turn off spinner explicitly if found - if(document.querySelectorAll(":invalid").length) { - stopSpinner(); + // Test for invalid fields (HTML5) and turn off spinner explicitly if found + if (document.querySelectorAll(":invalid").length) { + stopSpinner(); + } } });