Dean Herbert
8e80e2fa32
Fix incorrect realm copy logic when a beatmap becomes detached from its set
...
The code here was assuming that if the beatmap which is having changes
copied across does not exist within the `BeatmapSet.Beatmaps` list, it
was not yet persisted to realm.
In some edge case, it can happen that the beatmap *is* persisted to
realm but not correctly attached to the beatmap set. I don't yet know
how this occurs, but it has caused loss of data for at least two users.
The fix here is to check realm-wide for the beatmap (using its primary
key) rather than only in the list. We then handle the scenario where the
beatmap needs to be reattached to the set as a seprate step.
---
This does raise others questions like "are we even structuring this
correctly? couldn't a single beatmap exist in two different sets?"
Maybe, but let's deal with that if/when it comes up.
2023-06-27 18:20:01 +09:00
Dean Herbert
4ecc724841
Add test coverage of save failure when beatmap is detached from set
2023-06-27 18:18:58 +09:00
Dan Balasescu
6e2369e651
Add xmldoc on LegacyTotalScore
2023-06-27 17:18:32 +09:00
Dan Balasescu
5f350aa66f
Fix float division
...
Firstly, this is intended to be a float division.
Secondly, dividing integers by 0 results in an exception, but dividing
non-zero floats by 0 results in +/- infinity which will be clamped to
the upper range.
In particular, this occurs when the beatmap has 1 hitobject (0 drain
length).
2023-06-27 17:14:35 +09:00
Dean Herbert
c6d952abe3
Add support for Ctrl
+ <
/ >
to rotate selection in editor
...
As discussed in https://github.com/ppy/osu/discussions/24048 .
2023-06-27 17:01:41 +09:00
Dean Herbert
7ddbf4eaa7
Add a visual effect when keyboard shortcuts are used to trigger selection box buttons
2023-06-27 17:01:13 +09:00
Dean Herbert
41890cfc65
Change JudgementCountController
to a Component
and remove handling overrides
2023-06-27 16:39:21 +09:00
Dean Herbert
8bd6f7a46a
Rename ClicksPerSecondCalculator
to ClicksPerSecondController
2023-06-27 16:38:46 +09:00
Dean Herbert
de23a4691e
Change JudgementCountController
to a Component
2023-06-27 16:38:15 +09:00
Dean Herbert
113b570bd4
Move controllers above skinnable elements in initialisation order
2023-06-27 16:37:23 +09:00
Dean Herbert
e21583ff1b
Refactor InputCountController
to not require being added to foreign body via Attach
...
I've made the flow match `ClicksPerSecondCalculator` as close as
possible. Hopefully this reads better.
2023-06-27 16:36:00 +09:00
Dean Herbert
e99de0eb5d
Add safety to tests to ensure loaded
2023-06-27 16:04:34 +09:00
Dean Herbert
19ec6d5455
Add test coverage of new matching mode
2023-06-27 15:44:58 +09:00
Dean Herbert
c423f77d53
Add support for matching full terms using suffixed !
2023-06-27 15:34:33 +09:00
Dean Herbert
702266198b
Add missing "title=" search support at song select
2023-06-27 15:21:13 +09:00
Dan Balasescu
0c5c09597c
Store old total score as LegacyTotalScore
2023-06-27 14:59:40 +09:00
Dean Herbert
9b08aaf93f
Merge pull request #24045 from peppy/exact-match-song-select
...
Add exact match support for song select searches
2023-06-27 13:47:26 +09:00
Bartłomiej Dach
9c87d42f2b
Attempt to remedy HUD overlay test failure by waiting more
2023-06-26 22:41:31 +02:00
Bartłomiej Dach
40ceb4dfac
Fix incorrect indent size
2023-06-26 22:40:25 +02:00
Bartłomiej Dach
9c30b1d3e0
Merge branch 'master' into exact-match-song-select
2023-06-26 22:33:50 +02:00
Bartłomiej Dach
e998be0eee
Use == true
rather than ?? false
2023-06-26 22:29:20 +02:00
Bartłomiej Dach
4cb122dad4
Escape user input before embedding into regex
2023-06-26 22:27:48 +02:00
Bartłomiej Dach
4873aaf7ed
Add failing test case for filters potentially crashing due to invalid regex
2023-06-26 22:27:08 +02:00
Bartłomiej Dach
8a7a42b7ec
Remove weird nullable enable and double licence header
2023-06-26 22:19:52 +02:00
Dean Herbert
c84a75406c
Merge pull request #24053 from bdach/fix-skip-when-ready-2
...
Fix skip not always triggering in multiplayer
2023-06-27 05:10:14 +09:00
timiimit
e1cbcabe0b
Fix skip not always triggering in multiplayer
2023-06-26 21:26:41 +02:00
Bartłomiej Dach
7200855d46
Rename Judgement{Tally -> CountController}
2023-06-26 19:30:04 +02:00
Bartłomiej Dach
8d91580dc1
Rename {KeyCounter -> InputCount}Controller
2023-06-26 19:27:42 +02:00
Bartłomiej Dach
4ac48e4cd8
Group input handling members together
2023-06-26 19:25:52 +02:00
Bartłomiej Dach
ff562e2dd7
Remove redundant guard
...
In this particular case guarding with `.IsNull()` makes no sense, as the
`Trigger` is supplied in constructor and cannot feasibly be null. Doing
that only makes sense in scenarios where BDL / dependency injection is
involved.
2023-06-26 19:25:52 +02:00
Bartłomiej Dach
dbd76c1193
Fix attempting to add key counter controller to hierarchy in multiple places
2023-06-26 19:02:49 +02:00
Bartłomiej Dach
cc45ec4fff
Mark IHasRecordingHandler.Recorder
nullable
2023-06-26 18:52:05 +02:00
Dan Balasescu
a9c65d200a
Initial conversion of scores
2023-06-26 22:19:01 +09:00
Dan Balasescu
8e79510793
Add migration for total score conversion
2023-06-26 21:53:21 +09:00
Dean Herbert
a74547c43c
Add exact match support at song select
2023-06-26 18:26:44 +09:00
Dean Herbert
1960cd0839
Add test coverage of exact matching of search terms
2023-06-26 18:26:44 +09:00
Dean Herbert
14c95f4584
Apply NRT to FilterCriteria
2023-06-26 17:54:11 +09:00
Dean Herbert
44c08f3944
Add xmldoc for KeyCounterController
2023-06-26 16:47:33 +09:00
Dean Herbert
084354a8dc
Split out interfaces from RulesetInputManager
and improve xmldoc
2023-06-26 16:34:57 +09:00
Dean Herbert
c8e081c2b6
Remove unused interface
2023-06-26 16:32:19 +09:00
Dean Herbert
ec20942830
Actuall add composite component to hierarchy
2023-06-26 16:24:36 +09:00
Dean Herbert
3a2dd0e7dd
Move argon key counter to right to match stable expectations
2023-06-26 16:22:38 +09:00
Dean Herbert
52fdeeb491
Improve positioning and positioning code clarity for argon / triangles implementations
2023-06-26 16:20:51 +09:00
Dean Herbert
ba7f472247
Split padding out into constant to fix weird looking math
2023-06-26 16:05:57 +09:00
Dean Herbert
0c869367e1
Merge branch 'master' into hud/kc-skinnable
2023-06-26 15:53:16 +09:00
Dean Herbert
6ec8ccda11
Merge pull request #24039 from bastianpedersen/localise-multiplayer-countdown-buttons
...
Localise multiplayer countdown buttons
2023-06-26 14:55:28 +09:00
Dean Herbert
719ac75ad2
Merge pull request #24037 from cdwcgt/tournament-beatmapcache
...
Use beatmap cache to populate beatmap information in tournament client
2023-06-26 14:55:05 +09:00
Dan Balasescu
e1d723a2cc
Merge branch 'master' into diffcalc-total-scorev1
2023-06-26 14:32:14 +09:00
Bastian Pedersen
506829d9a5
Merge branch 'master' into localise-multiplayer-countdown-buttons
2023-06-26 07:28:05 +02:00
Dean Herbert
e085a36aac
Merge pull request #23331 from letsgoawaydev/ui-login-spacing-fix
...
Update login overlay appearance to match new designs
2023-06-26 14:11:57 +09:00