mirror of
https://github.com/ppy/osu
synced 2024-12-28 01:42:57 +00:00
Switch DelayedLoadUnloadWrappers to DelayedLoadWrappers
Due to pooling usage, there is no time we need to unload. Switching to DelayedLoadWrapper cleans up the code and reduces overhead substantially.
This commit is contained in:
parent
a1801f8ae4
commit
2346644c04
@ -69,29 +69,25 @@ namespace osu.Game.Screens.Select.Carousel
|
||||
if (Item == null)
|
||||
return;
|
||||
|
||||
DelayedLoadWrapper background;
|
||||
DelayedLoadWrapper mainFlow;
|
||||
|
||||
Header.Children = new Drawable[]
|
||||
{
|
||||
new DelayedLoadUnloadWrapper(() =>
|
||||
background = new DelayedLoadWrapper(new SetPanelBackground(manager.GetWorkingBeatmap(beatmapSet.Beatmaps.FirstOrDefault()))
|
||||
{
|
||||
var background = new SetPanelBackground(manager.GetWorkingBeatmap(beatmapSet.Beatmaps.FirstOrDefault()))
|
||||
{
|
||||
RelativeSizeAxes = Axes.Both,
|
||||
};
|
||||
|
||||
background.OnLoadComplete += d => d.FadeInFromZero(1000, Easing.OutQuint);
|
||||
|
||||
return background;
|
||||
}, 300, 5000),
|
||||
new DelayedLoadUnloadWrapper(() =>
|
||||
{
|
||||
// main content split into own class to reduce allocation before load operation triggers.
|
||||
var mainFlow = new SetPanelContent((CarouselBeatmapSet)Item);
|
||||
|
||||
mainFlow.OnLoadComplete += d => d.FadeInFromZero(1000, Easing.OutQuint);
|
||||
|
||||
return mainFlow;
|
||||
}, 100, 5000)
|
||||
RelativeSizeAxes = Axes.Both,
|
||||
}, 300),
|
||||
mainFlow = new DelayedLoadWrapper(new SetPanelContent((CarouselBeatmapSet)Item), 100),
|
||||
};
|
||||
|
||||
background.DelayedLoadComplete += fadeContentIn;
|
||||
mainFlow.DelayedLoadComplete += fadeContentIn;
|
||||
}
|
||||
|
||||
private void fadeContentIn(Drawable d)
|
||||
{
|
||||
d.FadeInFromZero(1000, Easing.OutQuint);
|
||||
}
|
||||
|
||||
protected override void Deselected()
|
||||
|
Loading…
Reference in New Issue
Block a user