Can't hover with Apple Pencil on iOS
Type
Game behaviour
Bug description
It's impossible to hover - move the cursor without registering an M1 key press - when using an Apple Pencil. Touching the screen with the pen always presses M1 irrespective of pressure.
Judging by https://github.com/ppy/osu/issues/6401 hover/tap/drag differentiation is supported for Android tablets, but that doesn't seem to be the case for iOS?
Screenshots or videos
No response
Version
2024.625.2-lazer
Logs
.
try turn on this?
After opening this, you may be able to make the effect consistent with the mouse hovering effect on your PC when your Apple Pencil touches the screen, and then press Z/X on the keyboard as "click" (? Maybe so, I should have turned on this switch to achieve this effect, but I forgot whether it was the exact switch)
But the prerequisite is that you need to have a keyboard💦
@Star-Clara That allows to hover, but disables dragging or tapping. I'm playing tap+x and have trouble following streams since I have to lift the pen to tap and lose the ability to aim at the same time. Apparently regular tablet (and Android?) users can light press on the pen to hover and increase pressure to tap, so they can aim while streaming.
But seemingly this is not implemented on iOS? Pencil seems to be treated exactly like a regular touch input, even though Apple pencil itself supports pressure and OS APIs expose it too.
Android pen hover is broken too. So this isn't iOS specific. I think it might be an SDL3 issue, since the mobile framework moved to SDL3 I've noticed that pen hover input isn't processed
It will get fixed once this is done.
@neko-kai I'm having trouble following what your playstyle is. Video recording will immensely help.
@frenzibyte Let me describe: By default the stylus is off the screen, same as with pure touch playstyle.
To hit jumps I touch the note with the stylus, then lift it off the screen completely and touch the next note with the stylus. Same as you would with a touchscreen playstyle, but using stylus instead of a finger.
To hit streams, I touch the note with the stylus, then hit X on the keypad, then lift the pen completely off the screen and aim for the next note. Because the cursor is not moving while the pen is not touching the screen, streaming looks 'staggered' in the replay.
To hit spaced streams, I touch the note with the pen, then drag the pen to the next note as if following a slider, then press X on the keypad. Then lift the pen completely off the screen and touch the next note. This is very hard to pull off on high bpm.
How would hover help: in spaced stream case, I could avoid lifting the pen off the screen, hovering to the next note instead.
I can't record today, but hopefully I described it well enough. I can record later if not.
There are still questions in my head, mainly: why do you have to lift the pen off the screen in streams / spaced streams? Does the game not handle input correctly otherwise? I think I still need a video recording showcasing the issue.
Also you mention the cursor doesn't move when the pen doesn't touch the screen, but this isn't true? There is hovering support on iOS, the cursor will move in gameplay if the pen is hovering the screen.
@frenzibyte
why do you have to lift the pen off the screen in streams / spaced streams? Does the game not handle input correctly otherwise?
Yes, that is the exact problem. Osu only produces one input from the pen - drag (mouse click and hold M1 + cursor move), no matter what amount of pressure is applied to the screen. There's no way to move the cursor without also sending M1 click. There's also no way to send M1 click without first unpressing M1 - i.e. lifting the pen from the screen.
Also you mention the cursor doesn't move when the pen doesn't touch the screen, but this isn't true? There is hovering support on iOS, the cursor will move in gameplay if the pen is hovering the screen.
Was that added recently? I did not update the game since the last message. Unless you mean the cursor will still move when registering drag (hold M1 click+move) - yes, it will move, but I still must lift the pen off from the screen ever so slightly in order to de-press M1 and touch the screen again to register the next M1 click.