Buffer Input Events Until Next Update?
Currently input events are emitted by the WndProc (on Win32Platform) which occurs during Platform.Update This is called with the same frequency as the render loop (in the default loop), which means on high refresh rate screens where you have multiple frames per update (or when the tick rate is set low) you will execute multiple click events as well.
This is fine until you consider that such events might do stuff that is deferred until the next update tick, like ui window layout or game object adding/removing. When there is logic that depends on an update tick running before the render it will break. (Refer to 1f5e0491745693179e390a0019daeca5fb79c943)
The proposal is to add click events to some kind of queue, and execute them only in the next update tick.