Eben ein bisschen rumgespielt.
Mit gefällt die Variante von @paul53 ein bisschen besser.
Grund ist folgender.
Bei einem long_press kommt der zweite Status nach ca. 300-400ms das heißt das Timeout von 500ms könnte danz gut passen.
Die Variante von @Asgothian hat den Nachteil, dass das short_release erst nach ca. 0,7 Sekunden kommt.
Somit gibt es mehr Wartezeit bis die gewünschte Reaktion ausgelöst wird.
28.1.2024, 07:04:23.703 [info ]: javascript.0 (958) script.js.test.E2213: 1_initial_press
28.1.2024, 07:04:24.455 [info ]: javascript.0 (958) script.js.test.E2213: 1_short_release
->0,752s
28.1.2024, 07:05:30.939 [info ]: javascript.0 (958) script.js.test.E2213: 1_initial_press
28.1.2024, 07:05:31.699 [info ]: javascript.0 (958) script.js.test.E2213: 1_short_release
->0,760s
28.1.2024, 07:05:59.983 [info ]: javascript.0 (958) script.js.test.E2213: 1_initial_press
28.1.2024, 07:06:00.375 [info ]: javascript.0 (958) script.js.test.E2213: 1_long_press
->0,392s
28.1.2024, 07:06:02.840 [info ]: javascript.0 (958) script.js.test.E2213: 1_initial_press
28.1.2024, 07:06:03.179 [info ]: javascript.0 (958) script.js.test.E2213: 1_long_press
->0,333s