Skip to content

Merge ppy/master: 5 upstream commits (spectator preview, beatmap panel fixes, pen settings) - #285

Merged
winnerspiros merged 6 commits into
masterfrom
copilot/merge-ppy-fork-into-our-fork
May 1, 2026
Merged

Merge ppy/master: 5 upstream commits (spectator preview, beatmap panel fixes, pen settings)#285
winnerspiros merged 6 commits into
masterfrom
copilot/merge-ppy-fork-into-our-fork

Conversation

Copilot AI commented May 1, 2026

Copy link
Copy Markdown

Our fork was 5 commits behind ppy/master since merge base 662c85d4. Merged with --strategy-option=ours so winnerspiros fork wins all conflicts.

Upstream commits pulled in

  • a3b8b9ae — Implement duels for ranked play
  • 3b84429e — Stop song preview when entering spectator
  • bc1c3d09 — Fix beatmap panels not showing "downloaded" green strip
  • 71f841d8 — Add beatmap panel to ranked play results screen
  • 9b3dba93 — Add pen input settings

Net file changes

Only 2 files had actual content changes (the rest auto-merged or deferred to ours):

  • ScreenQueue.cs — spectator preview stop integration
  • SoloSpectatorScreen.cs — same feature

Conflicting files (osu.Game.csproj, osu.Android.props, osu.iOS.props, config, multiplayer client) all retained our fork's versions.

Susko3 and others added 6 commits April 28, 2026 20:18
- depends on ppy/osu-framework#6737

Adds simple input settings section for pens that allows disabling the
handler and adjusting sensitivity. The section appears in-between Tablet
and Touch, and only on SDL3 (desktop and mobile). The pen sensitivity is
completely independent from mouse sensitivity.

<img width="537" height="149" alt="image"
src="https://github.com/user-attachments/assets/448eebba-84ea-4daf-8428-3bd07739bd6f"
/>

<br>

Keep in mind that the "Confine mouse cursor to window" mouse setting
also affects pens, feel free to suggest UX improvements. Also, toggling
"High precision mouse" might affect pens on certain configurations.

Edit: added image with updated header. Previously, it was "Device: Pen".

---------

Co-authored-by: Dean Herbert <pe@ppy.sh>
Different take to / supersedes / closes
ppy#37550

Just going for minimal lines of code compared to the PR above, by
reusing the quick play panel which is in a pretty good state.

<img width="1298" height="864" alt="image"
src="https://github.com/user-attachments/assets/409e163d-d7ea-4c07-874f-aaca7e145221"
/>

---------

Co-authored-by: Dean Herbert <pe@ppy.sh>
Song preview keeps playing when clicking "Start Watching" on
`SoloSpectatorScreen`. Making `SoloSpectatorScreen` suspends the screen
rather than exiting it, so neither `clearDisplay()` nor `OnExiting()`
fire.

Closes: ppy#36987
I've seen this suggested quite a bit and is a pretty easy implementation
all things considered.

For now, while on the queue screen, you can open up the dashboard
overlay and select another player to duel. This will bring you into an
unranked lobby.


https://github.com/user-attachments/assets/712897a9-9350-4741-899d-59662c722e43
…anel fix, results panel, pen settings) — fork takes precedence on conflicts

Co-authored-by: winnerspiros <1675249+winnerspiros@users.noreply.github.com>
@winnerspiros
winnerspiros marked this pull request as ready for review May 1, 2026 12:32
Copilot AI review requested due to automatic review settings May 1, 2026 12:32
@winnerspiros
winnerspiros merged commit 4fb1ace into master May 1, 2026
14 of 16 checks passed
@gitar-bot

gitar-bot Bot commented May 1, 2026

Copy link
Copy Markdown

Important

You are using the Gitar free plan. Upgrade to unlock code review, CI analysis, auto-apply, custom automations, and more.

Gitar

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Merges 5 upstream ppy/master commits into the fork, primarily integrating the “stop song preview when entering spectator / leaving matchmaking flow” behavior while keeping fork resolutions for all conflicts.

Changes:

  • Stop any playing preview track when SoloSpectatorScreen is suspended (not only when exiting).
  • Adjust ScreenQueue matchmaking lobby status handling / exit behavior during matchmaking queue screen lifecycle.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
osu.Game/Screens/Play/SoloSpectatorScreen.cs Stops preview playback when the spectator screen is suspended.
osu.Game/Screens/OnlinePlay/Matchmaking/Queue/ScreenQueue.cs Updates matchmaking lobby status subscription and exit flow behavior.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


currentState.BindTo(queue.CurrentState);
currentState.BindValueChanged(s => SetState(s.NewValue));
client.MatchmakingLobbyStatusChanged += onMatchmakingLobbyStatusChanged;
Comment on lines 456 to 462
switch (currentState.Value)
{
default:
return false;

case MatchmakingScreenState.Queueing:
client.MatchmakingLeaveLobby().FireAndForget();
queue.SearchInBackground();
return false;

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants