1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 08:37:24 +08:00
osu-lazer/osu.Game/Screens/Play/ArgonKeyCounterDisplay.cs
Dean Herbert 798e677c09
Refactor KeyCounterDisplay to use autosize
A previous attempt at this was unsuccessful due to a partially
off-screen elements not getting the correct size early enough (see
https://github.com/ppy/osu/issues/14793). This can be accounted for by
setting `AlwaysPresent` when visibility is expected.

This fixes [test failures](https://github.com/ppy/osu/actions/runs/6838444698/job/18595535795)
due to the newly added `Width` / `Height` being persisted with
floating-point errors (by not persisting the values in the first place,
via `AutoSize.Both`).
2023-11-12 17:19:25 +09:00

29 lines
893 B
C#

// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
// See the LICENCE file in the repository root for full licence text.
using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers;
using osu.Game.Screens.Play.HUD;
using osuTK;
namespace osu.Game.Screens.Play
{
public partial class ArgonKeyCounterDisplay : KeyCounterDisplay
{
protected override FillFlowContainer<KeyCounter> KeyFlow { get; }
public ArgonKeyCounterDisplay()
{
InternalChild = KeyFlow = new FillFlowContainer<KeyCounter>
{
Direction = FillDirection.Horizontal,
AutoSizeAxes = Axes.Both,
Alpha = 0,
Spacing = new Vector2(2),
};
}
protected override KeyCounter CreateCounter(InputTrigger trigger) => new ArgonKeyCounter(trigger);
}
}