From f1ec04114fbff2ae7feb76ee40c370245dfc11b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20Dach?= Date: Wed, 8 Oct 2025 13:30:59 +0200 Subject: [PATCH 1/2] Add failing test --- .../TestSceneBeatmapCarouselArtistGrouping.cs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/osu.Game.Tests/Visual/SongSelectV2/TestSceneBeatmapCarouselArtistGrouping.cs b/osu.Game.Tests/Visual/SongSelectV2/TestSceneBeatmapCarouselArtistGrouping.cs index 1178f89da6..cf71df914a 100644 --- a/osu.Game.Tests/Visual/SongSelectV2/TestSceneBeatmapCarouselArtistGrouping.cs +++ b/osu.Game.Tests/Visual/SongSelectV2/TestSceneBeatmapCarouselArtistGrouping.cs @@ -283,5 +283,18 @@ namespace osu.Game.Tests.Visual.SongSelectV2 CheckHasSelection(); } + + [Test] + public void TestManuallyCollapsingCurrentGroupAndOpeningAnother() + { + SelectNextSet(); + ToggleGroupCollapse(); + SelectNextGroup(); + AddUntilStep("no beatmap panels visible", () => GetVisiblePanels().Count(), () => Is.Zero); + + SelectNextSet(); + SelectNextSet(); + AddUntilStep("no beatmap panels visible", () => GetVisiblePanels().Count(), () => Is.Zero); + } } } From 9ba99660786a2c25e73c866d70a492576ca02cac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20Dach?= Date: Wed, 8 Oct 2025 13:39:19 +0200 Subject: [PATCH 2/2] Fix current beatmap set being incorrectly expanded after collapsing group with current selection Noticed in passing. See preceding commit for failure scenario. Regressed in https://github.com/ppy/osu/pull/35163. --- osu.Game/Screens/SelectV2/BeatmapCarousel.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/osu.Game/Screens/SelectV2/BeatmapCarousel.cs b/osu.Game/Screens/SelectV2/BeatmapCarousel.cs index 93356fef92..e75ad7e8ed 100644 --- a/osu.Game/Screens/SelectV2/BeatmapCarousel.cs +++ b/osu.Game/Screens/SelectV2/BeatmapCarousel.cs @@ -371,7 +371,7 @@ namespace osu.Game.Screens.SelectV2 if (userCollapsedGroup) { - if (grouping.BeatmapSetsGroupedTogether && CurrentGroupedBeatmap != null) + if (grouping.BeatmapSetsGroupedTogether && CurrentGroupedBeatmap != null && CheckModelEquality(group, CurrentGroupedBeatmap.Group)) setExpandedSet(new GroupedBeatmapSet(CurrentGroupedBeatmap.Group, CurrentGroupedBeatmap.Beatmap.BeatmapSet!)); userCollapsedGroup = false; }