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