1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-21 10:32:55 +08:00
Commit Graph

280 Commits

Author SHA1 Message Date
smoogipoo
b38d332268 Fix broken test 2021-04-08 16:31:39 +09:00
smoogipoo
72a42ceaf7 Merge branch 'multiplayer-spectator-player-grid' into multiplayer-spectator-screen 2021-04-08 00:19:00 +09:00
smoogipoo
024adb699c Add test and fix several issues 2021-04-08 00:12:21 +09:00
smoogipoo
214813154b Fix class name 2021-04-07 22:28:22 +09:00
smoogipoo
99bee73ac1 Merge branch 'master' into add-spectate-button-and-state 2021-04-07 22:07:52 +09:00
smoogipoo
93c5935ebc Add match subscreen support + test 2021-04-07 20:46:30 +09:00
smoogipoo
abd637ffaa Add button to footer 2021-04-07 17:35:18 +09:00
smoogipoo
56c13148f1 Fix typo in class name 2021-04-07 16:45:10 +09:00
smoogipoo
c744f77cfa Add participant panel state 2021-04-07 16:40:24 +09:00
smoogipoo
f5667125a0 Remove unnecessary method 2021-04-07 16:37:43 +09:00
smoogipoo
6be9c9f0f4 Link up ready button to spectate state 2021-04-07 16:35:50 +09:00
smoogipoo
1f57b6884d Add ready button to test scene 2021-04-07 16:30:40 +09:00
smoogipoo
6de91d7b6b Add spectate button + test 2021-04-06 21:37:27 +09:00
Bartłomiej Dach
a16c0641b2 Revert EF Core to version 2.2
This reverts commit f3faad74d5, reversing
changes made to 712e7bc7bf.

Several issues arose after migrating to 5.0, including, but possibly not
limited to, performance regressions in song select, as well as failures
when attempting to save beatmaps after metadata changes in the editor.
2021-03-21 11:05:15 +01:00
Dean Herbert
fce21f23d6 Add comments marking workarounds required for EFcore 5 2021-03-15 13:29:26 +09:00
Roman Kapustin
c6c616f244 Actualize tests 2021-03-11 21:02:40 +03:00
smoogipoo
77607c06eb Fix not being able to enter gameplay in TestSceneMultiplayer 2021-03-03 22:07:39 +09:00
smoogipoo
1ecb1d122a Fix up TestSceneMultiplayer 2021-03-03 21:54:34 +09:00
smoogipoo
6affe33fb2 Fix another test scene 2021-03-03 19:40:19 +09:00
smoogipoo
5cfaf1de1b Fix duplicate ongoing operation tracker 2021-03-01 17:43:03 +09:00
Dan Balasescu
c0f21c8cbe
Merge branch 'master' into fix-selecting-incompatible-freemods 2021-02-24 15:10:48 +09:00
Dean Herbert
cdbf8de29d Update other tests which can benefit from using a shorter beatmap 2021-02-22 14:53:32 +09:00
smoogipoo
ca92ad715a Add test 2021-02-22 13:32:54 +09:00
Dan Balasescu
9fc57b2145
Merge pull request #11832 from peppy/leaderboard-compact-mode
Show compact leaderboard during gameplay to reduce distractions
2021-02-19 18:17:46 +09:00
Dean Herbert
43c35c5118 Show local user in test scene 2021-02-19 15:15:31 +09:00
Dean Herbert
ee9e6fff40 Add bindable flow for expanded leaderboard state 2021-02-19 15:09:41 +09:00
Salman Ahmed
a845e96b7a Replace Ranks.Global completely with a GlobalRank property 2021-02-17 08:52:04 +03:00
Salman Ahmed
d7c91a7c6f Merge branch 'fix-tournament-user-population' into multiplayer-participant-rank 2021-02-17 08:42:59 +03:00
Dean Herbert
e82922f8c5 Add the ability to deselect the currently selected room via clicking away
Always felt wrong that you couldn't do this until now.
2021-02-16 13:44:37 +09:00
Salman Ahmed
0e7f52b5cc Always use JSON property global_rank for global ranks instead 2021-02-16 07:33:16 +03:00
Salman Ahmed
5b4999e8af Update user statistics retrieval with API changes 2021-02-16 07:33:13 +03:00
Salman Ahmed
d15ffff9a5 Simplifiy user statistics retrieval to one-time on deserialization 2021-02-16 04:48:36 +03:00
Salman Ahmed
a1496cd8f3 Remove necessity of using CurrentModeRank as a fallback 2021-02-16 04:48:36 +03:00
Dean Herbert
9ad38ab20e Move HubClientConnector retrieval to IAPIProvider 2021-02-15 16:43:56 +09:00
Salman Ahmed
d3c1b47592 Replace nullable API with null connector instead 2021-02-11 12:34:39 +03:00
Salman Ahmed
0c5e66205b Merge branch 'master' into abstract-hub-connection 2021-02-11 02:14:22 +03:00
Dean Herbert
9e400acd1a Merge branch 'master' into fix-mod-settings-fuckery 2021-02-10 17:43:03 +09:00
Dan Balasescu
92599aa02b
Merge branch 'master' into user-beatmap-downloading-states-2 2021-02-09 21:06:09 +09:00
Dean Herbert
4e3bb27cd5
Merge branch 'master' into fix-mod-settings-fuckery 2021-02-09 16:47:39 +09:00
Dean Herbert
b87327841d Add test covering initial state propagation 2021-02-09 15:46:23 +09:00
Salman Ahmed
a0ead38496 Prevent test spectator clients from attempting hub connections 2021-02-09 08:02:51 +03:00
Salman Ahmed
f04d6d5e5e Update hub clients with changes to connecotr 2021-02-09 08:02:32 +03:00
Dean Herbert
3133ccacfa Reset selected mods between each test method
This doesn't actually fix or change behaviour, but does seem like
something we probably want to do here.
2021-02-09 13:09:40 +09:00
Salman Ahmed
f76f92515e Clean up spectator streaming client with new hub connector 2021-02-09 02:15:56 +03:00
Dean Herbert
5fbed05d04
Merge pull request #11551 from smoogipoo/fix-leave-room-race-2
Fix client potentially not leaving a room on exiting multiplayer
2021-02-08 19:23:14 +09:00
smoogipoo
6e34e7d750 Merge branch 'master' into user-beatmap-downloading-states-2 2021-02-08 19:08:53 +09:00
Dean Herbert
42c169054a Revert "Disable failing test temporarily pending resolution"
This reverts commit 10142a4471.
2021-02-08 17:46:34 +09:00
Dean Herbert
10142a4471 Disable failing test temporarily pending resolution 2021-02-08 16:59:21 +09:00
Dean Herbert
1368d55152 Add test coverage of precedence of display 2021-02-05 15:58:27 +09:00
Dean Herbert
98c4573240 Add assertions covering new test 2021-02-05 15:52:49 +09:00
Dean Herbert
9e9e382bee Merge branch 'master' into user-beatmap-downloading-states-2 2021-02-05 15:27:17 +09:00
Dean Herbert
2fc3a97f56
Merge pull request #11516 from frenzibyte/ready-button-clean-up
Replace ready button beatmap logic with using `MultiplayerBeatmapTracker` instead
2021-02-05 15:09:25 +09:00
Salman Ahmed
78ea2d50bb Merge branch 'master' into ready-button-clean-up 2021-02-05 07:23:11 +03:00
Bartłomiej Dach
cb87da2bb8
Merge branch 'master' into freemod-select-overlay 2021-02-03 22:19:35 +01:00
smoogipoo
8bb1391515 Fix inspection 2021-02-03 14:53:55 +09:00
Dan Balasescu
2a4488c11b
Merge branch 'master' into freemods 2021-02-03 14:12:39 +09:00
smoogipoo
6453367a9c Merge branch 'freemod-select-overlay' into freemods 2021-02-02 21:43:35 +09:00
smoogipoo
643c0605d8 Implement the freemod selection overlay 2021-02-02 21:14:38 +09:00
Dean Herbert
bc8a4f4111 Update test handling 2021-02-02 17:21:54 +09:00
Dean Herbert
6d9ac4d0f0 Increase darkness of gradient on buttons to make text readability (slightly) better 2021-02-02 16:57:27 +09:00
smoogipoo
f166c4c414 Rename test 2021-02-02 11:04:09 +09:00
smoogipoo
97e3023df9 Renamespace/rename MatchSongSelect -> PlaylistsSongSelect 2021-02-01 20:16:58 +09:00
smoogipoo
89a42d60fb General cleanup 2021-02-01 18:50:32 +09:00
smoogipoo
3a906a89fc Pin mod position in participant panels 2021-02-01 18:27:15 +09:00
smoogipoo
3cd30d284e Renamespace 2021-02-01 18:08:49 +09:00
smoogipoo
f538963607 Extra mods -> user mods 2021-02-01 17:57:32 +09:00
smoogipoo
ac2a995041 Add user and panel states 2021-02-01 17:54:56 +09:00
smoogipoo
45e41aaeac Initial implementation of freemod selection overlay 2021-01-27 22:15:53 +09:00
smoogipoo
5ff76be052 Fix potential test failures due to timing 2021-01-20 19:43:51 +09:00
Salman Ahmed
4a1acdece2 Merge branch 'multiplayer-beatmap-tracker' into ready-button-clean-up 2021-01-18 20:06:47 +03:00
Salman Ahmed
5f2e9c5485 Add visual test case for displaying beatmap availability states 2021-01-18 11:49:27 +03:00
Bartłomiej Dach
2b23c8eabd Use alpha directly for checking visibility in test
`IsPresent` is no longer synonymous with being visible, after applying
the fix to the issue in question.
2021-01-17 18:08:58 +01:00
Salman Ahmed
585aa87c53 Fix playlist item download button never shown back after hiding 2021-01-17 19:17:14 +03:00
Dean Herbert
edb6d3907b
Merge pull request #11472 from frenzibyte/explicit-beatmap-markers
Add explicit content markers to beatmap panels and overlay
2021-01-17 21:44:10 +09:00
Salman Ahmed
63c0dc9bd9 Update ready button test scene with new logic 2021-01-17 01:11:03 +03:00
Salman Ahmed
7fd55efc43 Add test cases for displaying explicit beatmaps 2021-01-13 12:27:15 +03:00
Dean Herbert
422260797b Revert polling changes to fix participant list display
It turns out this polling was necessary to get extra data that isn't
included in the main listing request. It was removed deemed useless, and
in order to fix the order of rooms changing when selecting a room.
Weirdly, I can't reproduce this happening any more, and on close
inspection of the code can't see how it could happen in the first place.

For now, let's revert this change and iterate from there, if/when the
same issue arises again.

I've discussed avoiding this second poll by potentially including more
data (just `user_id`s?) in the main listing request, but not 100% sure
on this - even if the returned data is minimal it's an extra join
server-side, which could cause performance issues for large numbers of
rooms.
2021-01-12 17:26:00 +09:00
Bartłomiej Dach
8c3955d341 Improve safety of ongoing operation tracker
Finishing an operation started via
`OngoingOperationTracker.BeginOperation()` was risky in cases where the
operation ended at a callback on another thread (which, in the case of
multiplayer, is *most* cases). In particular, if any consumer registered
a callback that mutates transforms when the operation ends, it would
result in crashes after the framework-side safety checks.

Rework `OngoingOperationTracker` into an always-present component
residing in the drawable hierarchy, and ensure that the
`operationInProgress` bindable is always updated on the update thread.
This way consumers don't have to add local schedules in multiple places.
2021-01-09 22:45:24 +01:00
Dean Herbert
b69fe8a274
Merge branch 'master' into disable-repeat-multi-actions 2021-01-09 10:15:20 +09:00
Bartłomiej Dach
ff60d652ed Move out test ongoing operation tracker to higher level 2021-01-08 22:28:21 +01:00
Salman Ahmed
81355652fa Add simple test coverage 2021-01-05 06:00:15 +03:00
Dean Herbert
deb1ad7bca
Merge branch 'master' into disable-repeat-multi-actions 2021-01-04 23:38:29 +09:00
Bartłomiej Dach
f800448c87 Move game start logic to a higher level 2020-12-30 18:15:48 +01:00
Bartłomiej Dach
d34609b98e Rename On{ToggleReady -> ReadyClick} 2020-12-30 16:29:36 +01:00
Bartłomiej Dach
f2163a471a Trim missed reference to deleted member 2020-12-29 11:53:42 +01:00
Bartłomiej Dach
274730de34 Cache tracker in test scene to resolve test fails 2020-12-29 09:16:08 +01:00
Bartłomiej Dach
e9b0652359 Move ready-up operation logic again to client
To salvage ready up button tests.
2020-12-29 09:16:02 +01:00
Bartłomiej Dach
db52255bbe Adjust tracker usages to match new API 2020-12-29 08:20:43 +01:00
Bartłomiej Dach
f68e4fc88f Merge branch 'master' into disable-repeat-multi-actions 2020-12-29 07:42:20 +01:00
Dean Herbert
e3a41f6118 Rename variable to make more sense
It needs to be explicitly stated that the users in this list are related
to the *joined* room. Especially since it's sharing its variable name
with `SpectatorStreamingClient` where it has the opposite meaning (is a
list of *globally* playing players).
2020-12-29 14:27:35 +09:00
Bartłomiej Dach
af66e45311 Disable create room button after triggering join 2020-12-28 22:48:03 +01:00
Bartłomiej Dach
47ab7c9fd6 Disable ready button after host click 2020-12-28 22:48:03 +01:00
Dean Herbert
9155671557
Merge pull request #11341 from peppy/fix-leaderboard-user-handling
Fix incorrect null handling in GameplayLeaderboard
2020-12-28 22:44:55 +09:00
Dean Herbert
2e88036f39
Merge pull request #11342 from bdach/fix-beatmap-not-reverting
Fix user changes in multi song select not reverting on exit without confirmation
2020-12-28 21:56:07 +09:00
Bartłomiej Dach
a376a23ed7
Merge branch 'master' into fix-leaderboard-user-handling 2020-12-28 13:43:53 +01:00
Bartłomiej Dach
fb21b7c016 Add failing test cases 2020-12-28 12:35:16 +01:00
Dean Herbert
6254907ef9 Move multiplayer leaderboard test to correct namespace 2020-12-28 20:31:08 +09:00
Dean Herbert
046a76cb1d Allow null users to still be displayed in the participant list
The fix here is correcting the access of `user.Country`. The deicision
to have null users display is because this is the best we can do (if
osu-web could not resolve the user). We still want the users in the
lobby to be aware of this user's presence, rather than hiding them from
view.

osu-stable does a similar thing, showing these users as `[Loading]`. I
decided to go with blank names instead because having *any* text there
causes confusion. We can iterate on this in future design updates.
2020-12-28 15:03:44 +09:00
Bartłomiej Dach
4c43a67b68 Rename I{Multiplayer -> OnlinePlay}SubScreen 2020-12-25 18:07:34 +01:00
Bartłomiej Dach
83fb7c7a1a Re-namespace all files in OnlinePlay directory 2020-12-25 16:50:09 +01:00