Merge branch 'master' into math_clamp

This commit is contained in:
Dan Balasescu
2019-11-21 11:08:56 +09:00
committed by GitHub
2 changed files with 19 additions and 5 deletions

View File

@ -517,6 +517,12 @@ namespace osu.Game.Rulesets.UI
public BindableDouble Frequency => throw new NotImplementedException(); public BindableDouble Frequency => throw new NotImplementedException();
public IBindable<double> AggregateVolume => throw new NotImplementedException();
public IBindable<double> AggregateBalance => throw new NotImplementedException();
public IBindable<double> AggregateFrequency => throw new NotImplementedException();
public int PlaybackConcurrency public int PlaybackConcurrency
{ {
get => throw new NotImplementedException(); get => throw new NotImplementedException();

View File

@ -452,9 +452,6 @@ namespace osu.Game.Screens.Select
if (!itemsCache.IsValid) if (!itemsCache.IsValid)
updateItems(); updateItems();
if (!scrollPositionCache.IsValid)
updateScrollPosition();
// Remove all items that should no longer be on-screen // Remove all items that should no longer be on-screen
scrollableContent.RemoveAll(p => p.Y < visibleUpperBound - p.DrawHeight || p.Y > visibleBottomBound || !p.IsPresent); scrollableContent.RemoveAll(p => p.Y < visibleUpperBound - p.DrawHeight || p.Y > visibleBottomBound || !p.IsPresent);
@ -519,6 +516,14 @@ namespace osu.Game.Screens.Select
updateItem(p); updateItem(p);
} }
protected override void UpdateAfterChildren()
{
base.UpdateAfterChildren();
if (!scrollPositionCache.IsValid)
updateScrollPosition();
}
protected override void Dispose(bool isDisposing) protected override void Dispose(bool isDisposing)
{ {
base.Dispose(isDisposing); base.Dispose(isDisposing);
@ -637,9 +642,12 @@ namespace osu.Game.Screens.Select
private void updateScrollPosition() private void updateScrollPosition()
{ {
if (scrollTarget != null) scroll.ScrollTo(scrollTarget.Value); if (scrollTarget != null)
{
scroll.ScrollTo(scrollTarget.Value);
scrollPositionCache.Validate(); scrollPositionCache.Validate();
} }
}
/// <summary> /// <summary>
/// Computes the x-offset of currently visible items. Makes the carousel appear round. /// Computes the x-offset of currently visible items. Makes the carousel appear round.