keyboard shortcuts; ignore when some inputs active

This commit is contained in:
root 2025-04-27 10:11:07 +00:00
parent afd3392611
commit 72a24ce131

View file

@ -297,7 +297,26 @@ function make_lights() {
function keyPressed() {
if (key == ' ') {
if (
document.activeElement !== input_charge &&
document.activeElement !== document.body
) return;
toggle_physics();
} else if (key == 's') {
toggle_physics();
} else if (key == 'a') {
input_charge.valueAsNumber = 0;
input_charge.oninput();
} else if (key == '[') {
input_charge.valueAsNumber -= Number(input_charge.step);
input_charge.oninput();
} else if (key == ']') {
input_charge.valueAsNumber += Number(input_charge.step);
input_charge.oninput();
} else if (key == '-') {
make_particles(max(0, int(particles.length) - 1));
} else if (key == '=') {
make_particles(min(360, int(particles.length) + 1));
} else if (key == 'd') {
set_surface((surface + 1) % 3);
} else if (key == 'f') {
@ -305,6 +324,7 @@ function keyPressed() {
} else if (key == 'g') {
toggle_polytope();
} else if (key >= '0' && key <= '9') {
if (document.activeElement === input_particles) return;
make_particles(int(key));
}
}