Floating Tile Keyboard Bug
-
Okay this is a weird one which has taken me a while to track down in a dense script. I have a floating tile keyboard but when I read a table value in the onNote callback the keys stick and samples or sine wave playback is reduced to short blips. Commenting out the keyboard declaration code or the table read code eliminates the problem so I think one of those is causing it.
HiseSnippet 1138.3oc4W01aaaCDlxNZX1YtXEnCXeTvXCvAKy0xMIcKACMINwEAMINH1KceqiV5rMQjH8nnRlWP9OteJ8ev1QIKKoMgL6r2.13GLLet6He3C4cj5BovABBDRhw5ClMEHFejY+Yb0jNSnLN4jiHFOw7LZfBjVwPGNaJMH.bIFFkesFvnxZjn16e0gTOJ2ARgHjqDLG3TlOSkhdw9ug440k5BCX9Y7dq8OwQv6H7DgHeJa1hLk5bMcLbNU6VISxML31.hQKyWzto7Z6g+zAM0sCalzNJ5W0AI8GEYh3DJk.WcEFNwvz3Wvlg4wtLkP1WQU.NllGJbm0eh3Vd7TeEKfMzCzcrI8QNEC2U34pW75+eBGkkQTGHSXjNSXdtWjHqADbjuHUjKGKxOy7LlKaAdpX+wQFrRiHqbaTJOkWKGksWFJW.8LxPu0ho2SM66HYSUoVzb6CLwYUkiQwtQJ0qjYGApFbUSe50PWI1Yg5zXmsasok81s1XuZUqUUBisTf+znNO+483VANR.3VWCyFJnR2ZUwSAAJqanxEXVeiUxDPcc65InJFe7.lGzndhO02zBmmWtsdZRvZF.pF0uk4plfl2IlCYMNeTOhpnMpU8tZUqTWqA020p9aVLtZzSoyDgQ9g1t69HLzi2FMz6ZuSrShaQr561dqZUuei8pTQuFytdTC8xuTFPGpWCHdL8QBNJj6nXBtkfetPA83M1n5cUqn0LLVzyliAUTbWQ8BgF1QKp6q9aiazn3.yaRO2RgmGHmOrzgsalEtygMNC2zwzN87jhedn+PcPaZUn4XtrwF6ke5zY3xGfGM3QC6ln5fwm3GdXM+Q80Wti5NwBaFGE7S3LUuovh9wZZBRKxB0JKT55JKZzho.2Rgd3bMx7MdcV27PwbNUTNWs44bQarDFNFll3dMIRWzEsphw6hG+HFetY6sZlucSOcwtuP+2utSTerL6uKuFqtHbC8np7kbzkwma.2axkfqSh4AL0rrk4Wg5PsJrNjcQZyRR2mZdAS4LoX9Vp.9hh8e27cdU8ZlGOZD3nRI6Zlc+tGaI7GGUdRLUV2rOiCQ2jGQjOIpu0ao2.VuF3fTKpOvc4+7xdW92uz2k2yQgy9.IkGLUDjaf6C9rABtVPRA+1.7dD3GtTuImEuCVStPSu+Ucw0XgwzmpBkQmVNvWDxU4NcT9QcqZ9jlL9WvUrq8uvK.9qOy6OeghxKGc+CdjRkDN1m4O0CNleC3IPj3pCGAingdpEnYI4YBtX5DAm4j8.vkfRxFOFjYodgqmCTJ7AooHOa+KAOfl8v7ms+o3gPpDkI3QJE1KuT7PaWepYLcszIlV+2n9d4+eVe+R7km3ycOihGT+Q7s.3Sw5i0Uc.jIbN3o+7EiR5Ziw8ao6GWXk61J4KdlazV22XtQ6Di+iLG9TGo3cNwu7QeV9CiPv0MO5K7pfepI12xN4UOZswGKG9NGGsX+kn5TbDsW4HdwJGwVqbDauxQryJGwKW4H9pGHB8cOGDpD9wodDxuBNatULC
-
Nice catch! The table index query causes a table index change message which refreshes the floating tile, so the keyboard gets deleted and recreated and sends a all notes off command so it's blip time.
-
Aha, I hope it's not too tricky to fix
-
Well, the fix is rather easy. Just add this line:
keyboard.set("updateAfterInit", false);
this prevents the keyboard from being deleted. No idea why I didn't choose to make this the default though :)
-
Wonderful! :D