Thanks for bringing this to our attention. We have looked into it and considered some options.
This change would be an improvement for some cases, but may be undesirable for others.
The current meaning of OnePerButton is to show at most one ProximityPrompt per gamepad or keyboard button. There are cases where developers position multiple prompts as options to be selected from, all positioned on screen at once. For example, “Buy Item A” and “Buy Item B”. When set up this way, the intention is for the user to be able to see all options and choose from them. On mobile, even though “Touch” can be thought of as one button, the user can still interact with each prompt by tapping on it. It may make sense in this scenario to still show all the options so the user has the same experience as when using a keyboard. We don’t want to make the experience worse in these kinds of scenarios, so we have chosen to keep the behavior as-is.
As a workaround, I would suggest the following to get the desired behavior:
When UserInputService.LastInputType is Touch, set Exclusivity on each ProximityPrompt to OneGlobally.