Use `GetLocalisedBindableString()` instead

This commit is contained in:
Joseph Madamba 2024-09-18 11:16:25 -07:00
parent fd6b3b6b36
commit c185acdbae
3 changed files with 10 additions and 14 deletions

View File

@ -340,8 +340,6 @@ public enum LinkAction
Spectate,
OpenUserProfile,
SearchBeatmapSet,
SearchBeatmapTitle,
SearchBeatmapArtist,
OpenWiki,
Custom,
OpenChangelog,

View File

@ -445,17 +445,15 @@ public void HandleLink(LinkDetails link) => Schedule(() =>
break;
case LinkAction.SearchBeatmapSet:
SearchBeatmapSet(argString);
break;
if (link.Argument is LocalisableString localisable)
{
var localised = Localisation.GetLocalisedBindableString(localisable);
SearchBeatmapSet(localised.Value);
localised.UnbindAll();
}
else
SearchBeatmapSet(argString);
case LinkAction.SearchBeatmapTitle:
string title = ((RomanisableString)link.Argument).GetPreferred(Localisation.CurrentParameters.Value.PreferOriginalScript);
SearchBeatmapSet($@"title=""""{title}""""");
break;
case LinkAction.SearchBeatmapArtist:
string artist = ((RomanisableString)link.Argument).GetPreferred(Localisation.CurrentParameters.Value.PreferOriginalScript);
SearchBeatmapSet($@"artist=""""{artist}""""");
break;
case LinkAction.FilterBeatmapSetGenre:

View File

@ -242,7 +242,7 @@ private void load(OverlayColourProvider colourProvider)
title.Clear();
artist.Clear();
title.AddLink(titleText, LinkAction.SearchBeatmapTitle, titleText);
title.AddLink(titleText, LinkAction.SearchBeatmapSet, LocalisableString.Interpolate($@"title=""""{titleText}"""""));
title.AddArbitraryDrawable(Empty().With(d => d.Width = 5));
title.AddArbitraryDrawable(externalLink = new ExternalLinkButton());
@ -259,7 +259,7 @@ private void load(OverlayColourProvider colourProvider)
title.AddArbitraryDrawable(new SpotlightBeatmapBadge());
}
artist.AddLink(artistText, LinkAction.SearchBeatmapArtist, artistText);
artist.AddLink(artistText, LinkAction.SearchBeatmapSet, LocalisableString.Interpolate($@"artist=""""{artistText}"""""));
if (setInfo.NewValue.TrackId != null)
{