In Project Settings, we allow users to set Default Viewport Mouse Capture Mode to specify how the viewport handles mouse capturing, with the default setting capturing and releasing the mouse on the mouse down and mouse up events. We currently do not have a similar setting for touch events, which means the input will never be captured. If a widget receives the Touch Ended event instead of the viewport, the IsCurrentlyPressed flag can get stuck on true.
An ideal solution would be to either update SceneViewport's OnTouchStarted and OnTouchEnded events to respect Default Viewport Mouse Capture Mode, or to expose a second setting to allow users to specify the capture behavior of touch events in the viewport.
There's no existing public thread on this issue, so head over toAnswerHub just mention UE-46458 in the post.