Add a "Download Replay" button to score context menu#38271
Conversation
| if (Score.OnlineID > 0) | ||
| items.Add(new OsuMenuItem(CommonStrings.CopyLink, MenuItemType.Standard, () => game?.CopyToClipboard($@"{api.Endpoints.WebsiteUrl}/scores/{Score.OnlineID}"))); | ||
|
|
||
| if (Score.HasOnlineReplay && Score.Files.Count == 0) |
There was a problem hiding this comment.
This menu item continues to show if the user already has the given replay downloaded, meaning they can keep re-downloading it forever and not be able to tell that it's already downloaded.
Unsure how it should be handled UX-wise. Probably best choice user-wise would be disabling the menu item and changing its text to something like "Replay already downloaded" or similar. Not sure.
There was a problem hiding this comment.
maybe it could go through "Replay downloading" -> "Replay downloaded"?
could also be replaced by "watch replay" as well.
There was a problem hiding this comment.
could also be replaced by "watch replay" as well.
This could work too, sure.
There was a problem hiding this comment.
I think I'd rather hide it if it's already downloaded? In such cases, the "watch replay" context item will be there in its palce.
There was a problem hiding this comment.
the watch replay button doesn't show up in leaderboard even if the replay is available locally, I'll be adding it shortly
I thought the score context menu looked really bland.
The button only shows up in online leaderboards (global, country and friends).
A "Watch replay" button that downloads the replay and watches it could be added in the future, but this was a pretty simple PR so I thought I would just do this first.
Inspired by #37053.