Also disallows using the random skin keybind when the external edit
overlay is open. SkinEditor should already be disabling it, but I
figured we might as well add this in for redundancy
This reverts commit c0b6e784a5.
The change affects editor and other stuff and I'm not sure it's correct.
It's not like client needs to match the appearance really. It already
doesn't in many places.
Reported at https://osu.ppy.sh/community/forums/topics/2015478?n=1.
Would you believe it that this button that has been there for literal
years never did anything?
Implemented at a per-beatmap level. Also additionally added to context
menu (at @peppy's suggestion), and also copy reworded from "Delete from
unplayed" to "Mark as played" because double negation hurt my tiny
brain.
I actually thought things were bugged with the previous display method,
since the hinting was very similar to the hover colour/state.
I've adjusted this to hopefully give users a better idea of what this is
intending to show them.
Closes https://github.com/ppy/osu/issues/31098.
Low effort fix because it was already half broken. The test was testing
in isolation but in actual editor usage it wasn't working as expected.
This brings it down to be in line with the flowing elements that usually
do their best to not get in the way.
Decided against putting it in the `HUDOverlay` flow for simplicity. It
will work fine until it doesn't.
In particular, mania-specific beatmaps that normally go via the
"passthrough" generator should not adjust the stored pattern value.
The "spinner" generator, which was previously intended to be used for
non-mania-specific beatmaps, is now valid even for mania-specific
beatmaps, and uses this value.
In other words, another way of writing this would be:
```csharp
if (conversion is SpinnerPatternGenerator || conversion is
PassThroughPatternGenerator) ? lastPattern : newPattern;
```