Does the 'onClick' event work for you?
I never use the 'onActionPerformed' event on buttons. I always use the onClick event.
I had similar problems with touchscreen not always receiving mouse events.
If you're using at least 8.1.15 it may be worth looking into Pointer events.