1
0
mirror of https://github.com/ppy/osu.git synced 2025-03-09 07:07:18 +08:00

39421 Commits

Author SHA1 Message Date
Dean Herbert
29376ffcc0 Trigger state change when flipping via hotkey in the editor
This will trigger a change even if nothing happens. But I think that's
okay (not easy to avoid) because the change handler should be aware that
nothing changed, if anything.

Closes https://github.com/ppy/osu/issues/24065.
2023-06-28 13:52:51 +09:00
Dean Herbert
99e55bb9c0 Add logging and Debug.Fail on detached beatmap detection 2023-06-28 12:21:05 +09:00
Dean Herbert
1d4380cfd0
Merge pull request #24058 from peppy/full-term-exact-match
Add support for matching full terms at song select using suffixed `!`
2023-06-28 12:14:15 +09:00
Dean Herbert
b3f2a3ccdf Use more correct localised string source for "sign out" text 2023-06-28 12:11:40 +09:00
Dean Herbert
bc26d52dbd
Merge pull request #24067 from bdach/fix-difficulties-not-deleting-from-db
Fix delete difficulty flow not actually deleting the difficulty from realm
2023-06-28 12:06:01 +09:00
Dean Herbert
076f41be12
Merge pull request #24059 from peppy/add-editor-rotate-hotkeys
Add support for `Ctrl` + `<` / `>` to rotate selection in editor
2023-06-28 12:03:34 +09:00
Bartłomiej Dach
6876566530
Fix difficulty deletion not deleting records from realm 2023-06-27 23:43:00 +02:00
Bartłomiej Dach
eb82bd3871
Merge pull request #24064 from bastianpedersen/localise-common-game-notifications
Localise common game notifications
2023-06-27 22:40:22 +02:00
Bartłomiej Dach
9be2d9d62e
Fix hotkey presses generating unnecessary undo history
The buttons don't check whether the operation they correspond to is
possible to perform in the current state of the selection box, so not
checking `Can{Reverse,Rotate}` causes superfluous undo states to be
added without any real changes if an attempt is made to reverse or
rotate a selection that cannot be reversed or rotated.
2023-06-27 22:25:04 +02:00
Bartłomiej Dach
17ed45d07c
Mention hotkeys in button tooltips 2023-06-27 22:04:15 +02:00
Bartłomiej Dach
54280f06be
Switch to == true 2023-06-27 22:02:15 +02:00
Bartłomiej Dach
ad3a470eaf
Enable NRT in SelectionBox 2023-06-27 22:01:44 +02:00
Bartłomiej Dach
eb6bdb5a38
Merge pull request #23926 from ItsShamed/hud/kc-skinnable
Make key counter skinnable
2023-06-27 21:57:41 +02:00
Bartłomiej Dach
bf99fc61b8
Trim full phrase filters in a more precise manner 2023-06-27 21:50:36 +02:00
Bartłomiej Dach
e3d97b37f1
Rename MatchMode.{None -> Substring} 2023-06-27 21:28:37 +02:00
Bartłomiej Dach
06654dc618
Merge branch 'master' into full-term-exact-match 2023-06-27 21:27:39 +02:00
Bastian Pedersen
62dcd513ca Fix XML doc not mirroring string 2023-06-27 21:02:44 +02:00
Bastian Pedersen
8a2cd57f4e Add back missing punctunation 2023-06-27 21:01:39 +02:00
Bastian Pedersen
37ee3a7bbd Localise common game notifications 2023-06-27 20:56:35 +02:00
Bartłomiej Dach
af66ccbfdf
Merge branch 'master' into hud/kc-skinnable 2023-06-27 20:35:47 +02:00
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
Dan Balasescu
6e2369e651 Add xmldoc on LegacyTotalScore 2023-06-27 17:18:32 +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
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
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
4cb122dad4
Escape user input before embedding into regex 2023-06-26 22:27:48 +02:00
Bartłomiej Dach
8a7a42b7ec
Remove weird nullable enable and double licence header 2023-06-26 22:19:52 +02: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
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