1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-21 19:27:24 +08:00

Merge pull request #26920 from peppy/2fa-visibility

Give better visibility when the game is pending 2FA
This commit is contained in:
Bartłomiej Dach 2024-02-02 07:10:45 +01:00 committed by GitHub
commit 5260b8cae0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 14 additions and 3 deletions

View File

@ -19,6 +19,11 @@ namespace osu.Game.Localisation
/// </summary>
public static LocalisableString Connecting => new TranslatableString(getKey(@"connecting"), @"Connecting...");
/// <summary>
/// "Verification required"
/// </summary>
public static LocalisableString VerificationRequired => new TranslatableString(getKey(@"verification_required"), @"Verification required");
/// <summary>
/// "home"
/// </summary>

View File

@ -95,11 +95,10 @@ namespace osu.Game.Overlays.Toolbar
private void onlineStateChanged(ValueChangedEvent<APIState> state) => Schedule(() =>
{
failingIcon.FadeTo(state.NewValue == APIState.Failing ? 1 : 0, 200, Easing.OutQuint);
failingIcon.FadeTo(state.NewValue == APIState.Failing || state.NewValue == APIState.RequiresSecondFactorAuth ? 1 : 0, 200, Easing.OutQuint);
switch (state.NewValue)
{
case APIState.RequiresSecondFactorAuth:
case APIState.Connecting:
TooltipText = ToolbarStrings.Connecting;
spinner.Show();
@ -108,6 +107,13 @@ namespace osu.Game.Overlays.Toolbar
case APIState.Failing:
TooltipText = ToolbarStrings.AttemptingToReconnect;
spinner.Show();
failingIcon.Icon = FontAwesome.Solid.ExclamationTriangle;
break;
case APIState.RequiresSecondFactorAuth:
TooltipText = ToolbarStrings.VerificationRequired;
spinner.Show();
failingIcon.Icon = FontAwesome.Solid.Key;
break;
case APIState.Offline:

View File

@ -280,7 +280,7 @@ namespace osu.Game.Screens.Menu
sideFlashes.Delay(FADE_IN_DURATION).FadeIn(64, Easing.InQuint);
}
else if (!api.IsLoggedIn)
else if (!api.IsLoggedIn || api.State.Value == APIState.RequiresSecondFactorAuth)
{
// copy out old action to avoid accidentally capturing logo.Action in closure, causing a self-reference loop.
var previousAction = logo.Action;