mirror of
https://github.com/ppy/osu.git
synced 2025-02-15 23:42:55 +08:00
Merge pull request #20321 from HiddenNode/fix_graph_info_overlap
Fix Progress bar info text overlapping with progress graph
This commit is contained in:
commit
7f15dc6e6c
@ -47,10 +47,7 @@ namespace osu.Game.Screens.Play.HUD
|
|||||||
if (clock != null)
|
if (clock != null)
|
||||||
gameplayClock = clock;
|
gameplayClock = clock;
|
||||||
|
|
||||||
// Lock height so changes in text autosize (if character height changes)
|
AutoSizeAxes = Axes.Y;
|
||||||
// don't cause parent invalidation.
|
|
||||||
Height = 14;
|
|
||||||
|
|
||||||
Children = new Drawable[]
|
Children = new Drawable[]
|
||||||
{
|
{
|
||||||
new Container
|
new Container
|
||||||
|
@ -15,7 +15,6 @@ using osuTK;
|
|||||||
using osuTK.Graphics;
|
using osuTK.Graphics;
|
||||||
using osu.Framework.Graphics.Shapes;
|
using osu.Framework.Graphics.Shapes;
|
||||||
using osu.Framework.Allocation;
|
using osu.Framework.Allocation;
|
||||||
using osu.Framework.Layout;
|
|
||||||
using osu.Framework.Threading;
|
using osu.Framework.Threading;
|
||||||
|
|
||||||
namespace osu.Game.Screens.Play
|
namespace osu.Game.Screens.Play
|
||||||
@ -24,11 +23,6 @@ namespace osu.Game.Screens.Play
|
|||||||
{
|
{
|
||||||
private BufferedContainer<Column> columns;
|
private BufferedContainer<Column> columns;
|
||||||
|
|
||||||
public SquareGraph()
|
|
||||||
{
|
|
||||||
AddLayout(layout);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int ColumnCount => columns?.Children.Count ?? 0;
|
public int ColumnCount => columns?.Children.Count ?? 0;
|
||||||
|
|
||||||
private int progress;
|
private int progress;
|
||||||
@ -57,7 +51,7 @@ namespace osu.Game.Screens.Play
|
|||||||
if (value == values) return;
|
if (value == values) return;
|
||||||
|
|
||||||
values = value;
|
values = value;
|
||||||
layout.Invalidate();
|
graphNeedsUpdate = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -75,21 +69,25 @@ namespace osu.Game.Screens.Play
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private readonly LayoutValue layout = new LayoutValue(Invalidation.DrawSize);
|
|
||||||
private ScheduledDelegate scheduledCreate;
|
private ScheduledDelegate scheduledCreate;
|
||||||
|
|
||||||
|
private bool graphNeedsUpdate;
|
||||||
|
|
||||||
|
private Vector2 previousDrawSize;
|
||||||
|
|
||||||
protected override void Update()
|
protected override void Update()
|
||||||
{
|
{
|
||||||
base.Update();
|
base.Update();
|
||||||
|
|
||||||
if (values != null && !layout.IsValid)
|
if (graphNeedsUpdate || (values != null && DrawSize != previousDrawSize))
|
||||||
{
|
{
|
||||||
columns?.FadeOut(500, Easing.OutQuint).Expire();
|
columns?.FadeOut(500, Easing.OutQuint).Expire();
|
||||||
|
|
||||||
scheduledCreate?.Cancel();
|
scheduledCreate?.Cancel();
|
||||||
scheduledCreate = Scheduler.AddDelayed(RecreateGraph, 500);
|
scheduledCreate = Scheduler.AddDelayed(RecreateGraph, 500);
|
||||||
|
|
||||||
layout.Validate();
|
previousDrawSize = DrawSize;
|
||||||
|
graphNeedsUpdate = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user