1
0
mirror of https://github.com/ppy/osu.git synced 2026-05-21 00:20:25 +08:00
Files
osu-lazer/osu.Game/Graphics
T
Bartłomiej Dach dfed564bda Allow BeatmapCarousel.CurrentSelection to accept raw BeatmapInfos (and redirect to appropriate grouped beatmap)
This is probably where things get a little controversial.

There are some song select flows wherein song select just wants to
ensure sanity by authoritatively setting the global beatmap. The goal is
to change the beatmap immediately and instantly. Therefore it should
kind of be the carousel's job to figure out its grouping complications.

To that end, `CurrentSelection` is made virtual, and overridden in
`BeatmapCarousel` to perform a sort of reconciliation logic. If an
external component sets `CurrentSelection` to a `BeatmapInfo`, one of
the two following things happen:

- Nothing, if the current `GroupedBeatmap` is already a copy of the
  beatmap that needs to be selected, or

- The carousel looks at its items, finds any first copy which matches
  the beatmap that the external consumer wanted selected, and changes
  selection to that instead.
dfed564bda · 2025-08-29 13:25:08 +02:00
History
..
2023-06-24 01:00:03 +09:00
2023-06-24 01:00:03 +09:00
2023-06-24 01:00:03 +09:00
2023-06-24 01:00:03 +09:00
2025-04-11 20:13:53 +09:00
2025-08-21 09:00:44 +02:00
2023-06-24 01:00:03 +09:00
2024-07-03 00:19:04 +09:00