@ScottRomanowski When you "highlight" something (your term) by using Down/Up Arrow you are selecting it and VASL is going to test and trigger downloads when you do that. Same for typing in a board name. Same for clicking on a board name with the mouse. All methods lead to selection, selection leads to downloads, and downloads lead to playing the game.
No, I do not think they all lead to selection!
Consider these actions. I start VASL (I'm running 6.69-beta2 on VASSAL 3.7.13), select File -> New Game, then click on the "Select Board" pull-down menu
Case 1) I left-click on 02 Geoboard. I see the updating/succeeded messages in the chat window. Then the board appears in the "Choose Boards" window and the pull-down menu disappears. As I move the mouse pointer over board names, the highlight follows the pointer but VASL does not check & update or preview the board. This is good.
Case 2) I use the arrow key to move the highlight down. VASL checks and updates every board the highlight moves over and I see the board after the update is finished. The pull-down menu is still there because I have not "selected" a board by mouse clicking or pressing Enter.
Today the board server is
VERY slow. As I was testing this now, I pressed the down arrow about a dozen times. VASL spent the next thirty seconds checking and updating boards. I got VASL to freeze by just holding down the down arrow key for a few seconds! I just had to forcibly close the windows after waiting a couple minutes.
Imagine if it didn't work this way. You highlight/select a new board by whatever means. This board is not on your device. How do you know what it looks like or that you have actually selected the board you want? VASL needs to show you the board. But it doesn't exist on your device. How is VASL going to show it to you?
What you are saying is not how VASL works if you use the mouse! VASL does
not preview a board if I hover the mouse pointer over it, despite moving the highlight there. I have to click on the board. Moving the highlight there by keyboard work differently -- if you use the keyboard VASL checks, updates, and shows
every board you move over with the keyboard!
Is "debouncing" sufficient?
I don't think this involves debouncing a noisy input. The difference is that using the mouse to move the highlight does not trigger a check/update/display action, but using the keyboard does. Please either make the mouse work like the keyboard (pause to update each board you move the pointer over; this will drive mouse users crazy so please don't do it), or make the keyboard work like the mouse (don't check/update/display anything until you select by pressing Enter or clicking).
Alternatively, you could have both the keyboard and mouse check, update, and display only if you hover the mouse, or don't type, for N ms. 250? 500? Adjustable? This is probably what
@uckelman meant. But you cannot implement this by simply polling every X ms and trigger the check if the highlight is in the same place as it was last time. The user could be moving the highlight up and down in between, and the check would sometimes catch it at the same board by chance, and sometimes not. I don't think having random check/update/display behavior is something you would want. The test has to be no keystrokes and zero mouse movement for some period.