Commit Graph

34038 Commits

Author SHA1 Message Date
a83c45b50e Fix compile failures from framework breaking change 2022-06-24 16:07:14 +02:00
df30bedab6 Update framework again 2022-06-24 16:01:52 +02:00
14327943a2 Update framework 2022-06-24 21:28:30 +09:00
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
30eebf3511 Merge branch 'master' into c-sharp-10 2022-06-24 21:22:33 +09:00
7692bac35a Simplify refetch (and ensure to invalidate after processing) 2022-06-24 21:02:38 +09:00
0c3d890f76 Fix reprocessing not working on import due to realm threading woes 2022-06-24 21:02:38 +09:00
30b3973c9f Difficulty cache invalidation flow 2022-06-24 21:02:38 +09:00
66a01d1ed2 Allow song select to refresh the global WorkingBeatmap after an external update 2022-06-24 21:02:38 +09:00
6999933d33 Split updater process into realm transaction and non-transaction 2022-06-24 21:02:38 +09:00
021b16f2f3 Ensure WorkingBeatmap is invalidated after update 2022-06-24 21:02:38 +09:00
fe570d8052 Queue beatmaps for update after editing 2022-06-24 21:02:38 +09:00
06d59b717c Move beatmap processing tasks to new BeatmapUpdater class 2022-06-24 21:02:37 +09:00
2ca4184eda Merge pull request #18834 from bdach/ban-implicit-to-lower-upper
Disallow usage of `string.To{Upper,Lower}()` without explicit culture
2022-06-24 20:39:58 +09:00
7eb49dac7a Merge pull request #18832 from peppy/bdc-remove-unused-path
Remove unused bindable retrieval flow in `BeatmapDifficultyCache`
2022-06-24 20:20:23 +09:00
823b3c1c0f Ensure WorkingBeatmap is always using a detached instance 2022-06-24 19:07:54 +09:00
2ae48d5a87 Rename incorrect parameter name in BeatmapManager.GetWorkingBeatmap 2022-06-24 19:07:54 +09:00
26c5b59f6d Replace usages of string.To{Lower,Upper}() 2022-06-24 11:57:45 +02:00
c179127670 Remove unused bindable retrieval flow 2022-06-24 17:09:56 +09:00
0755430006 Use AddOnce for update calls 2022-06-24 17:09:56 +09:00
8912f07745 Merge branch 'master' into difficulty-icon-refactor-pass 2022-06-24 16:34:35 +09:00
f71f6302fd Remove unnecessary null casts 2022-06-24 14:50:11 +09:00
28837693e5 Nuke calculating everything
The whole component is pointless so I'm just going to nuke for now I
guess. Kind of makes the whole refactor effort pointless but oh well?

To expand on this, the implementation was actually incorrect as pointed
out at https://github.com/ppy/osu/pull/18819#pullrequestreview-1017886035.
2022-06-24 14:24:06 +09:00
12ea8369ee Update retriever to be relatively sized 2022-06-24 14:06:31 +09:00
d9c1a9d71f Use new property to specify no tooltip, rather than passing only ruleset 2022-06-24 14:06:18 +09:00
129c907092 Remove unused parameters 2022-06-24 13:58:02 +09:00
04d69010b5 Split overlong conditional to local function 2022-06-23 18:03:07 +02:00
bea70988bc Remove unnecessary #nullable disable 2022-06-23 17:57:22 +02:00
454eff43c5 publicity -> accesstype 2022-06-23 11:40:25 -04:00
d67c482c48 move publicity filter to multi exclusively 2022-06-23 11:36:08 -04:00
9a15adbfff add an all option to publicity filter 2022-06-23 11:24:28 -04:00
2def6d809b refactor to use enum dropdown 2022-06-23 11:02:27 -04:00
730228ec2a Merge pull request #18818 from nekodex/rearrangeable-list-feedback
Add audio feedback for rearranging list items
2022-06-23 23:30:55 +09:00
aaf619b35c Don't play sample if there is no item being actively dragged 2022-06-23 20:13:01 +09:00
9c46592e0e Move collection change event binding to LoadComplete 2022-06-23 20:04:54 +09:00
ef258122d2 Move GetDifficultyRating helper method to StarDifficulty 2022-06-23 19:51:58 +09:00
b068df2149 Enable NRT on BeatmapDiffiultyCache 2022-06-23 19:51:58 +09:00
32652ace75 Update resources 2022-06-23 19:51:44 +09:00
01da6f20b3 Tidy up all remaining usages 2022-06-23 19:27:35 +09:00
7dec530ca5 Split out simple DifficultyIcon with no calculation overhead and update usages 2022-06-23 19:27:35 +09:00
4a2ca4394b Remove unused ModeTypeInfo class 2022-06-23 19:27:35 +09:00
3a83e5684c Tidy up DifficultyIcon 2022-06-23 19:27:35 +09:00
d6b073ebad Move DifficultyRetrieve to own class and split both pathways into separate constructors 2022-06-23 19:27:35 +09:00
4a316fad2f Add audio feedback for rearranging list items 2022-06-23 17:45:42 +09:00
158f0a1f23 Remove remaining Room!=null checks in TestMultiplayerClient where possible 2022-06-23 17:38:34 +09:00
9ed37621a7 Merge pull request #18816 from peppy/avoid-waiting-forever
Ban usage of `ManualResetEventSlim.Wait()` without a timeout value
2022-06-23 17:26:26 +09:00
51268d0cc8 Throw on Wait failure in a few remaining cases 2022-06-23 15:28:21 +09:00
7ef8b7df5f Add timeout for all ManualResetEventSlim.Wait invocations
Timeout values were taken as best-guesses of upper values we'd expect
from sane execution.
2022-06-23 14:46:00 +09:00
bc557bacf0 Remove room null assertion in TestMultiplayerClient.ChangeState to avoid assert
This method is run from async contexts, but `get_Room` asserts update
thread which is not the case. Was causing silent test failures (showing
as pass but failing `dotnet-test` via return code):

TestSceneMultiplayer.TestGameplayFlow

```
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: Score preparation failed!
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: NUnit.Framework.AssertionException: :
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at osu.Framework.Logging.ThrowingTraceListener.Fail(String message1, String message2)
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at System.Diagnostics.TraceInternal.Fail(String message, String detailMessage)
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at System.Diagnostics.TraceInternal.TraceProvider.Fail(String message, String detailMessage)
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at System.Diagnostics.Debug.Fail(String message, String detailMessage)
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at osu.Game.Online.Multiplayer.MultiplayerClient.get_Room() in /opt/buildagent/work/ecd860037212ac52/osu.Game/Online/Multiplayer/MultiplayerClient.cs:line 98
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at osu.Game.Tests.Visual.Multiplayer.TestMultiplayerClient.ChangeState(MultiplayerUserState newState) in /opt/buildagent/work/ecd860037212ac52/osu.Game/Tests/Visual/Multiplayer/TestMultiplayerClient.cs:line 275
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at osu.Game.Screens.OnlinePlay.Multiplayer.MultiplayerPlayer.PrepareScoreForResultsAsync(Score score) in /opt/buildagent/work/ecd860037212ac52/osu.Game/Screens/OnlinePlay/Multiplayer/MultiplayerPlayer.cs:line 223
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at osu.Game.Screens.Play.Player.prepareScoreForResults() in /opt/buildagent/work/ecd860037212ac52/osu.Game/Screens/Play/Player.cs:line 747
```
2022-06-23 14:10:20 +09:00
bf5a7e3f2a add locked room filter 2022-06-22 17:01:28 -04:00