> No, I don't need the double click. On touch devices, you just tab on a control, and sometimes the click event is executed twice. Also
> if someone does a couble click the click action is executed twice.
If you handle clicks with addEventListener instead of relying on RTL to send you events you can try with stop propagation call (I don't know if it will help)
Here is example I'm using for ListBox
lbMain.Handle.addEventListener('click', @OnCustClick, False);
procedure TfrmClientDetails.OnCustClick(evt: JEvent);
I don't have a tablet to test but perhaps right event to handle is touchstart instead of click. In any case I think you'll have to do manual handling of duplicating events.
> Is there a general mechanism to disable events on a form, in order I don't need to it on every single control, with a click event?
> During showing a new form (transform effect), to user should also not click to any other control, during animiation.
I don't know if there's some official SMS way, but just few ideas, before starting transition try to
1) add click handler for whole document BrowserAPI.Document (or call SetCapture on some control), that should prevent other controls of receiving it
2) create some panel (like TW3BlockBox) over entire Form (or Display) that should prevent other controls of receiving events.
I see you already found a solution, that's I guess is this variant 2). Thanks for sharing code, it might come in handy.