Merge branch 'master' into make_screenshot_manager_a_drawable

This commit is contained in:
Dan Balasescu 2020-02-07 14:48:50 +09:00 committed by GitHub
commit 819973bba3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 4 deletions

View File

@ -10,6 +10,8 @@ using osu.Framework.Graphics;
using osu.Game.Overlays.Comments;
using osu.Game.Overlays;
using osu.Framework.Allocation;
using osu.Framework.Bindables;
using osu.Game.Users;
namespace osu.Game.Tests.Visual.Online
{
@ -37,23 +39,29 @@ namespace osu.Game.Tests.Visual.Online
public TestSceneCommentsContainer()
{
BasicScrollContainer scroll;
CommentsContainer comments;
TestCommentsContainer comments;
Add(scroll = new BasicScrollContainer
{
RelativeSizeAxes = Axes.Both,
Child = comments = new CommentsContainer()
Child = comments = new TestCommentsContainer()
});
AddStep("Big Black comments", () => comments.ShowComments(CommentableType.Beatmapset, 41823));
AddStep("Airman comments", () => comments.ShowComments(CommentableType.Beatmapset, 24313));
AddStep("Lazer build comments", () => comments.ShowComments(CommentableType.Build, 4772));
AddStep("News comments", () => comments.ShowComments(CommentableType.NewsPost, 715));
AddStep("Trigger user change", comments.User.TriggerChange);
AddStep("Idle state", () =>
{
scroll.Clear();
scroll.Add(comments = new CommentsContainer());
scroll.Add(comments = new TestCommentsContainer());
});
}
private class TestCommentsContainer : CommentsContainer
{
public new Bindable<User> User => base.User;
}
}
}

View File

@ -12,6 +12,7 @@ using osu.Game.Online.API.Requests.Responses;
using System.Threading;
using System.Linq;
using osu.Framework.Extensions.IEnumerableExtensions;
using osu.Game.Users;
namespace osu.Game.Overlays.Comments
{
@ -23,6 +24,8 @@ namespace osu.Game.Overlays.Comments
public readonly Bindable<CommentsSortCriteria> Sort = new Bindable<CommentsSortCriteria>();
public readonly BindableBool ShowDeleted = new BindableBool();
protected readonly Bindable<User> User = new Bindable<User>();
[Resolved]
private IAPIProvider api { get; set; }
@ -109,10 +112,13 @@ namespace osu.Game.Overlays.Comments
}
}
});
User.BindTo(api.LocalUser);
}
protected override void LoadComplete()
{
User.BindValueChanged(_ => refetchComments());
Sort.BindValueChanged(_ => refetchComments(), true);
base.LoadComplete();
}
@ -148,7 +154,7 @@ namespace osu.Game.Overlays.Comments
loadCancellation?.Cancel();
request = new GetCommentsRequest(type, id.Value, Sort.Value, currentPage++);
request.Success += onSuccess;
api.Queue(request);
api.PerformAsync(request);
}
private void clearComments()