Commit Graph

22621 Commits

Author SHA1 Message Date
1d9aaac2c2 Fix HOC not propagating DHO results applied on kill
`DrawableHitObject.OnKilled()` calls `UpdateResult()` to clean up a
hitobject's state definitively with regards to the judgement result
before returning the DHO back to the pool.

As it turns out, if a consumer was relying on this code path (as taiko
was in the case of nested strong hit objects), it would not work
properly with pooling, due to `HitObjectContainer` unsubscribing from
`On{New,Revert}Result` *before* calling the DHO's `OnKilled()`.

This in turn would lead to users potentially getting stuck in gameplay,
due to `ScoreProcessor` not receiving all results via that event path.

To resolve, change the call ordering to allow hit result changes applied
in `OnKilled()` to propagate normally.
2021-01-21 00:05:37 +01:00
7da7079ef2 Merge pull request #11537 from Mysfit/mp-initial-creation-screen-fix
Fix match/playlist room screen showing briefly behind initial room settings window on creation.
2021-01-20 22:05:14 +09:00
95f52ae054 Merge pull request #11536 from rednir/sort-skins-alphabetically
Sort SkinSection in alphabetical order
2021-01-20 21:49:31 +09:00
455383c3c0 Merge pull request #11528 from peppy/fix-autoplay-in-multiplayer
Fix multiplayer mod select showing autoplay as a choice
2021-01-20 21:49:16 +09:00
12f2067357 Merge branch 'master' into sort-skins-alphabetically 2021-01-20 21:15:16 +09:00
eb85efcea2 Add check to playlists too 2021-01-20 20:59:28 +09:00
250727cbd1 Merge branch 'master' into mp-initial-creation-screen-fix 2021-01-20 20:53:33 +09:00
2fabfe54a0 Merge pull request #11546 from bdach/mark-test-as-abstract
Mark legacy beatmap skin colour test as abstract
2021-01-20 10:03:40 +09:00
82e5a5bf6f Mark legacy beatmap skin colour test as abstract 2021-01-19 23:10:15 +01:00
3b49b7461e Schedule entire operation for safety
Also removes a redundant list copy.
2021-01-19 19:35:53 +01:00
78e590d25d Refactor skin sorting method
* Rename to `sortUserSkins` to convey meaning better.
* Sort in-place instead of slicing the list.
* Change to `void` to avoid misleading users that the method returns
  a new list instance.
* Fix typo in comment.
2021-01-19 18:36:42 +01:00
b00c6a1d60 Make first non-default skin index a property
The previous code was very brittle - it was not always updating
properly, and seems to have worked either by a carefully crafted set of
circumstances, or just plain coincidence.

Having this be a get-only property avoids potential error in the future
caused by not updating the index properly, at the expense of an added
linear lookup.
2021-01-19 18:31:37 +01:00
206a0b8bac Fix firstNonDefault staying as -1 2021-01-19 16:55:50 +00:00
a880b8d21d Satisfy AppVeyor 2021-01-19 16:11:16 +00:00
052e9eef02 Added inline comments 2021-01-19 09:16:39 -05:00
b265d2dab4 Remove another whitespace 2021-01-19 14:16:22 +00:00
1d4c813ff6 Merge branch 'sort-skins-alphabetically' of https://github.com/rednir/osu into sort-skins-alphabetically 2021-01-19 14:03:31 +00:00
31e61326e1 Only user skins are sorted 2021-01-19 14:00:17 +00:00
33677f5770 Use BindValueChanged to show main content for new multiplayer and playlist rooms when the settings overlay is hidden. 2021-01-19 08:52:43 -05:00
6d1d488831 Revert "Use the client.RoomUpdated action instead of binding the value of the settings overlay visibility and creating an event from it based on its ValueChanged action."
This reverts commit cbfb999c28.
2021-01-19 08:24:14 -05:00
9b7187e3c8 Revert "Use fades instead of event listening. Fixed same issue in the playlist room creation."
This reverts commit 3a7608275d.
2021-01-19 08:23:31 -05:00
f1894a8bac fixed itemUpdated() 2021-01-19 12:17:56 +00:00
3a7608275d Use fades instead of event listening. Fixed same issue in the playlist room creation. 2021-01-19 00:35:56 -05:00
cbfb999c28 Use the client.RoomUpdated action instead of binding the value of the settings overlay visibility and creating an event from it based on its ValueChanged action. 2021-01-18 17:13:24 -05:00
b35d224efb Merge branch 'master' into less-black-confirm-to-exit 2021-01-18 23:03:24 +01:00
5233a0449a Hide main room subscreen on initial mp room creation. Toggle mp room subscreen visibility based on settings overlay visibility before room is created. 2021-01-18 16:08:06 -05:00
0b65c0cd25 Remove whitespace 2021-01-18 20:17:42 +00:00
da89426a3b Merge branch 'master' of https://github.com/ppy/osu into sort-skins-alphabetically 2021-01-18 20:09:15 +00:00
7476cb3047 Sort SkinSection in alphabetical order 2021-01-18 19:51:42 +00:00
fda271d9d9 Merge pull request #11520 from frenzibyte/fix-item-download-button
Fix playlist item download button never shown back after hiding
2021-01-18 23:37:33 +09:00
ced7a36788 Update namespaces 2021-01-18 21:24:10 +09:00
12443e39ae Update framework 2021-01-18 19:16:32 +09:00
707d5346c9 Merge branch 'master' into fix-spinner-spinning-weirdness 2021-01-18 18:26:44 +09:00
0560eb4120 Reduce final fill alpha of main menu confirm-to-exit 2021-01-18 18:22:21 +09:00
0b165dce4b Fix multiplayer mod select showing autoplay as a choice 2021-01-18 17:50:32 +09:00
94fee8c31d Avoid doing a config lookup if initial conditional fails 2021-01-18 16:13:58 +09:00
1364de1166 Merge branch 'master' into beatmap-colour-setting 2021-01-18 16:07:46 +09:00
585aa87c53 Fix playlist item download button never shown back after hiding 2021-01-17 19:17:14 +03:00
5e0fcc4a6c Merge pull request #11473 from frenzibyte/explicit-search-control
Add "explicit maps" search filter control to beatmap listing
2021-01-17 23:27:15 +09:00
5278cad393 Reword setting to make more sense 2021-01-17 22:42:48 +09:00
5fd644fc57 Unify variable names 2021-01-17 22:42:48 +09:00
eb53e32792 Use task completion source for room join flow
On Android, users were unable to join or create multiplayer rooms. The
root cause of that was that the both the wait and set of the
`ManualResetEvent` in `getRoomUsers` occurred on the same thread, which
created a chicken-and-egg situation - the set could not proceed until
the wait had actually completed.

Resolve by substituting the `ManualResetEvent` for a
`TaskCompletionSource` to achieve a promise-style task, which the
previous code was a crude approximation of anyway.

Closes #11385.
2021-01-17 14:40:22 +01:00
addd463d26 Merge branch 'master' into explicit-search-control 2021-01-17 21:44:25 +09:00
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
816cc7a59b Adjust explicit label spacing on beatmap set overlay 2021-01-17 00:35:23 +01:00
dee46d7ba2 Use GroupBy() instead 2021-01-16 23:42:28 +01:00
bb0d289993 Split variable for readability 2021-01-16 23:24:28 +01:00
1d7be6a604 Merge branch 'master' into android-multiple-import-support-suppot 2021-01-16 23:13:11 +01:00
c80e9c08fd Merge branch 'master' into net5.0 2021-01-16 16:07:44 +01:00
a3535f4b79 Further simplified beatmap colouring tests. 2021-01-16 02:09:35 -05:00