I suppose it’s better to make it a separate node, an event. I have no idea how to do this without a timer. It will not be difficult for me to do this. So you can leave this task to me.
What for? If the current solution works and this algorithm is used in other engines (it means that it has been tested in practice).
I think this is a very specific setting, do you know a lot of practical applications? The nodes must be created for use in real-world tasks. It would be possible to create a node with the setting of “cells” as tables (indicate the number of columns and rows, then such a “table” was automatically expanded), but in my case only 2 columns were needed.
You can create a node that, like a button from Canvas, will track a certain area, in this case, the advantage will be the presence of the “Down”, “Moved” state, since the Canvas does not have it, there is only Click (send event).
I can suggest creating a Drag-and-drop node - this is often used in games.