1
0
mirror of https://github.com/ppy/osu.git synced 2025-03-10 18:57:20 +08:00

Merge pull request #32222 from zihadmahiuddin/feat/window-title-current-map

Add current beatmap info to window title
This commit is contained in:
Dan Balasescu 2025-03-06 17:09:42 +09:00 committed by GitHub
commit 97749e188d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -421,6 +421,7 @@ namespace osu.Game
SelectedMods.BindValueChanged(modsChanged);
Beatmap.BindValueChanged(beatmapChanged, true);
configUserActivity.BindValueChanged(_ => updateWindowTitle());
applySafeAreaConsiderations = LocalConfig.GetBindable<bool>(OsuSetting.SafeAreaConsiderations);
applySafeAreaConsiderations.BindValueChanged(apply => SafeAreaContainer.SafeAreaOverrideEdges = apply.NewValue ? SafeAreaOverrideEdges : Edges.All, true);
@ -828,6 +829,35 @@ namespace osu.Game
{
beatmap.OldValue?.CancelAsyncLoad();
beatmap.NewValue?.BeginAsyncLoad();
updateWindowTitle();
}
private void updateWindowTitle()
{
if (Host.Window == null)
return;
string newTitle;
switch (configUserActivity.Value)
{
default:
newTitle = Name;
break;
case UserActivity.InGame:
case UserActivity.TestingBeatmap:
case UserActivity.WatchingReplay:
newTitle = $"{Name} - {Beatmap.Value.BeatmapInfo.GetDisplayTitleRomanisable(true, false)}";
break;
case UserActivity.EditingBeatmap:
newTitle = $"{Name} - {Beatmap.Value.BeatmapInfo.Path ?? "new beatmap"}";
break;
}
if (newTitle != Host.Window.Title)
Host.Window.Title = newTitle;
}
private void modsChanged(ValueChangedEvent<IReadOnlyList<Mod>> mods)