1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-14 21:43:04 +08:00
Commit Graph

42570 Commits

Author SHA1 Message Date
smoogipoo
3168a927dc Fix possible exception 2021-07-19 20:50:30 +09:00
Dean Herbert
80c2b1449b Fix API request potentially firing failed events after completion
Specifically, `Cancel()` calls were not thread safe. Due to a series of
events, `ListPollingComponent` could call `Cancel` from a non-update
thread, leading to a race condition where both a `Success` and `Fail`
event can be fired.

This is intended to be the simplest fix possible, locking and guarding
specifically on the callbacks. Further work could be done in the future
to improve the flow surrounding `pendingFailure`, potentially reducing
redundant work and cleaning up the code, but that's not happening here.

Closes https://github.com/ppy/osu/issues/13632.
2021-07-19 20:27:01 +09:00
ekrctb
41169fbdaf Add [NotNull] 2021-07-19 20:20:10 +09:00
smoogipoo
2eec524f27 Fix password not copied from multiplayer client 2021-07-19 20:20:08 +09:00
smoogipoo
d6aa15e5d7 Remove local APIRoom from test multiplayer client 2021-07-19 20:19:23 +09:00
ekrctb
7201cfe0b4 Move child drawable creation of CatchPlayfield from constructor to load. 2021-07-19 20:18:17 +09:00
ekrctb
879467961f Fix catcher trails displayed in wrong place 2021-07-19 20:13:31 +09:00
ekrctb
b88ee3c1a1 Pass DroppedObjectContainer via constructor instead of DI
It is now just one level deep, so it is not beneficial to use DI here.
This effectively reverts ae09c23e.
2021-07-19 20:11:49 +09:00
smoogipoo
1b9d297911 Add test 2021-07-19 20:08:29 +09:00
smoogipoo
a5a0f12e19 Also copy password in test room manager 2021-07-19 20:07:56 +09:00
smoogipoo
26d0eea485 Set HasPassword correctly in the response room 2021-07-19 20:03:32 +09:00
smoogipoo
2515785f93 Use room password to fill settings textbox 2021-07-19 20:03:32 +09:00
smoogipoo
8c0daa89a0 Make test multiplayer client validate password 2021-07-19 20:03:27 +09:00
smoogipoo
063f14da98 Update test room manager to not return passwords 2021-07-19 20:03:27 +09:00
ekrctb
50f9e5f362 Replace usage of CatcherArea.MovableCatcher with Catcher 2021-07-19 19:52:40 +09:00
ekrctb
97059a9f50 Create Catcher in CatchPlayfield 2021-07-19 19:44:40 +09:00
Dean Herbert
b3f60c8253 Fix date being updated on replays unexpectedly 2021-07-19 19:28:35 +09:00
Dean Herbert
f16b4957aa Move clone to earlier in the process 2021-07-19 19:18:34 +09:00
Dean Herbert
23ef666f34
Merge pull request #13887 from ekrctb/legacy-converted-y
Preserve Y position of hit objects in osu!catch
2021-07-19 18:48:23 +09:00
Dan Balasescu
f1f6af88a1
Merge pull request #13926 from peppy/set-rank-on-failed-submission
Set score's rank on a failed submission
2021-07-19 18:45:21 +09:00
Dean Herbert
443058f879 Move playfield constant to top of file and make internal 2021-07-19 18:41:29 +09:00
Dan Balasescu
473011070f
Merge pull request #13908 from peppy/editor-disallow-placement-when-untimed
Fix editor composer allowing object placement without timing present
2021-07-19 18:37:19 +09:00
Dean Herbert
5f94692aa6
Merge pull request #13927 from ekrctb/catch-hitobjec-utils
Change the way position is set for components of catch editor
2021-07-19 18:26:11 +09:00
Dean Herbert
13cb658d29 Mark identifiers as verbatim strings 2021-07-19 18:15:09 +09:00
Dean Herbert
80539fefe1 Merge branch 'master' into localise-profile-overlay 2021-07-19 18:14:59 +09:00
Dean Herbert
b29209d13f Ensure tool is always set back to select tool when beatmap becomes untimed 2021-07-19 17:08:40 +09:00
Dean Herbert
bde35d9f21 Rename radio button classes to be local to editor 2021-07-19 16:57:12 +09:00
ekrctb
87c39909c6 Simplify DependencyProvidingContainer
Using an array of tuple for dependencies instead of using children.
2021-07-19 14:37:19 +09:00
Dean Herbert
caba78cb5d Copy score during submission process to ensure it isn't modified 2021-07-19 14:14:28 +09:00
Dean Herbert
e507faef29 Add deep cloning support to Score/ScoreInfo/Replay 2021-07-19 14:14:28 +09:00
ekrctb
fffe0d2e57 Add tests of JuiceStreamPath.
"Property testing" is heavily used, tests that generates random cases and asserting properties.
That gives high confidence of round-trip correctness of `SliderPath` conversion, for example.
2021-07-19 13:59:10 +09:00
ekrctb
be495a7488 Add JuiceStreamPath to allow editing JuiceStream in catch editor
A `JuiceStream` holds a legacy `SliderPath` as the representation of the path.
However, the `SliderPath` representation is difficult to work with because `SliderPath` works in 2D position, while osu!catch works in `(time, x)` coordinates.
This `JuiceStreamPath` represents the path in a more convenient way, a polyline connecting list of `(distance, x)` vertices.
2021-07-19 13:59:10 +09:00
ekrctb
c347584851 Use added utility function 2021-07-19 13:33:46 +09:00
ekrctb
70c9d7105f Add a function to compute hit object position in catch editor 2021-07-19 13:33:22 +09:00
Dean Herbert
3c028ce05c Add IDeepCloneable interface and update existing CreateCopy methods to use it 2021-07-19 12:54:17 +09:00
Dean Herbert
d7f997a7f3 Set score's rank on a failed submission
As we don't have a `RankInfo.F`, this is the next best choice. I am also
adding a check osu-web side for this - this is just to make sure we
aren't sending scores with SS when they are not actually completed.

I'm working on a separate PR to ensure this does not get mutated during
the player exit process.
2021-07-19 12:36:15 +09:00
Dan Balasescu
48b34457e7
Merge pull request #13925 from peppy/fix-icon-overwrite
Fix osu!(lazer) overwriting osu!(stable) desktop icons by adding back a suffix
2021-07-19 12:08:03 +09:00
Dan Balasescu
49fb8f52e2
Merge pull request #13922 from bdach/replace-get-or-default-calls
Replace calls to obsoleted `GetOrDefault()` extension
2021-07-19 11:55:11 +09:00
Dean Herbert
e0af5f0469 Fix osu!(lazer) overwriting osu!(stable) desktop icons by adding back a suffix
As discussed in https://github.com/ppy/osu/issues/13864, Squirrel will
use the product name before the title, allowing us to use this variable
to update the icon while not changing the window display title or naming
elsewhere.
2021-07-19 11:38:45 +09:00
Bartłomiej Dach
fb5d25405e
Replace calls to obsoleted GetOrDefault() extension 2021-07-18 21:52:16 +02:00
Lucas A
80885301a3 Fix codefactor issues. 2021-07-18 19:36:34 +02:00
Lucas A
9257cd7fad Revert the use of an enum in ProfileHeader. 2021-07-18 19:18:06 +02:00
Lucas A
77807f9e32 Merge branch 'master' into localise-profile-overlay 2021-07-18 19:14:05 +02:00
Dean Herbert
856adfe6a3
Merge pull request #12877 from Henry-YSLin/osu-target-mod
Implement osu target mod
2021-07-19 02:09:34 +09:00
Dean Herbert
4aa0e62673
Merge pull request #13911 from kj415j45/localisation-base
Add support for localising breadcrumb controls
2021-07-19 02:09:11 +09:00
Bartłomiej Dach
6e065362be
Merge branch 'master' into osu-target-mod 2021-07-18 18:22:36 +02:00
Derrick Timmermans
2e2a2bdd99
Allow moving timeline selection when mousedown event is outside of blueprint container 2021-07-18 18:06:59 +02:00
Derrick Timmermans
ee220feecf
Avoid using guesses to determine whether inputs blocked 2021-07-18 16:04:23 +02:00
Henry Lin
fdebe4b94a Code formatting fixes 2021-07-18 22:01:26 +08:00
Dean Herbert
49f0c707f6 Move approach circle hiding within BeginAbsoluteSequence 2021-07-18 22:34:28 +09:00