Bartłomiej Dach
6f37487528
Replace calls to defective Humanizer methods with correct version
2022-07-18 22:34:58 +02:00
Bartłomiej Dach
ffa9a83a4f
Add own fixed copy of defective Humanizer methods
2022-07-18 21:37:31 +02:00
andy840119
48047f2e58
Move the null check in the outside.
...
AddCursor() should not accept the null value.
2022-06-30 23:29:49 +08:00
andy840119
a5b1f1a688
mark the string as nullable.
2022-06-30 23:23:14 +08:00
andy840119
26de34da84
Remove the nullable disable annotation.
2022-06-30 23:20:40 +08:00
Dean Herbert
31a447fda0
Update parameter discards
2022-06-24 21:26:19 +09:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Salman Ahmed
c8665dc93b
Update TimeSpan
localisation to use ToLocalisableString
2022-04-28 11:12:50 +03:00
Dean Herbert
c99397f75a
Add the ability to add settings to skinnable elements
2022-03-13 17:03:25 +09:00
Dean Herbert
42e07b7308
Convert to extension method to avoid recursive calls
2022-03-03 14:15:37 +09:00
Dean Herbert
2f6e65a9a2
Gracefully handle undefined DateTimeOffset
values
...
Only seems to happen in tests, but best to safeguard against this
regardless.
2022-02-21 16:35:40 +09:00
Dean Herbert
fc1877b6fa
Move to extension method and revert logic to match previous implementation
2022-02-21 13:42:26 +09:00
Dean Herbert
5736b7d978
Fix cursors sent to osu-web being potentially string formatted in incorrect culture
...
Fixed as per solution at https://github.com/JamesNK/Newtonsoft.Json/issues/874 .
Note that due to the use of `JsonExtensionDataAttribute` it's not
feasible to change the actual specification to `JValue` in the
`Dictionary`.
In discussion with the osu-web team, it may be worthwhile to change the cursor
to a string format where parsing is not required at our end. We could already
do this in fact, but there are tests that rely on it being a `JToken` so the
switch to `JValue` seems like the easier path right now.
2022-01-04 17:20:46 +09:00
Dean Herbert
c9f6c5c673
Add MatchesOnlineID
implementation for IScoreInfo
2021-12-10 18:34:31 +09:00
Dean Herbert
416ee2447a
Move archive filename helper method to extension method
2021-11-25 16:35:54 +09:00
Dean Herbert
3946a39b65
Make BeatmapSet.Metadata
non-null
2021-11-24 15:03:34 +09:00
Dean Herbert
6fb2757739
Remove usage of Nuget.Packaging
extension methods for IList.AddRange
2021-11-23 15:02:02 +09:00
Dean Herbert
59e763467f
Move StoragePath
implementation to an extension method
2021-11-19 16:08:38 +09:00
Dean Herbert
66c307e0ee
Remove usage of key repeat helper method
2021-11-18 13:13:36 +09:00
Dean Herbert
2cbdac91ad
Add missing APIUser
comparison method
2021-11-16 12:44:20 +09:00
Dean Herbert
fbc46941fa
Add type safety to MatchesOnlineID
extension methods
2021-11-16 12:37:47 +09:00
Dean Herbert
18f73b985b
Make ModelExtensions
nullable enabled
2021-11-15 14:38:01 +09:00
Dean Herbert
a4c11e8813
Use extension method to compare online IDs
2021-11-15 14:34:50 +09:00
Dean Herbert
98dcf487da
Add fallback case for GetDisplayString
if called on a null reference
2021-11-12 16:02:51 +09:00
Bartłomiej Dach
5ec8288508
Add GetDisplayString()
extension to handle all model interface types globally
2021-11-09 13:53:07 +01:00
Bartłomiej Dach
baf9961934
Amend xmldoc of shake extension method
2021-09-14 22:50:45 +02:00
Dean Herbert
e17b800470
Move shake logic into extension method
2021-09-14 14:44:23 +09:00
Dean Herbert
7a44ddb36b
Update incorrect xmldoc
2021-07-31 16:48:45 +09:00
Dean Herbert
472c0137ec
Add new extension for formatting time durations
2021-07-31 16:45:53 +09:00
Dean Herbert
c751e087ca
Merge branch 'master' into skin-editor-closest-anchor
2021-06-18 18:54:07 +09:00
Bartłomiej Dach
cc5145a131
Fix languages with a sub-language part not working properly
2021-06-16 11:10:03 +02:00
Robin Avery
dc50ae40b9
Rename OverridesClosestAnchor
to UsesFixedAnchor
2021-06-08 08:28:42 -04:00
Robin Avery
133d72a8c0
Rename UsingClosestAnchor
...
It is now "OverridesClosestAnchor". The logic is inverted accordingly.
2021-06-07 00:14:36 -04:00
Robin Avery
f28916e30f
Remove all UsingClosestAnchor() extension logic
...
It is replaced with ISkinnableDrawable.UsingClosestAnchor.
2021-06-07 00:04:53 -04:00
Robin Avery
da1c38d5a9
Uninvert logic of SkinnableInfo.UsingClosestAnchor
...
Also rename "IsUsingClosestAnchor" to simply "UsingClosestAnchor".
2021-06-06 10:13:35 -04:00
Robin Avery
11b1b8c633
Add serialization support via SkinnableInfo
2021-06-06 07:18:08 -04:00
Robin Avery
c9f5808bf2
Move lookup logic to DrawableExtensions
...
This is now a global lookup to be shared by serialization and editor.
2021-06-06 06:58:21 -04:00
Bartłomiej Dach
43c73f9583
Mark access to exception if task faulted as safe
...
There are seemingly no C#-side compile-time guarantees that it is safe,
but if the task's state is `Faulted` (as is checked right before), the
exception cannot be null as per the documentation.
2021-05-15 00:09:34 +02:00
Dean Herbert
3b862798e9
Standardise naming of methods related to SkinnableInfo
2021-05-13 13:14:49 +09:00
Dean Herbert
8b9ac86d4b
Merge branch 'master' into skin-serialisation
2021-05-13 12:35:06 +09:00
Bartłomiej Dach
1b579dd838
Extract invariant instantiation info extension method
2021-05-12 23:23:51 +02:00
Dean Herbert
c94df672e5
Also serialise Origin
out
2021-05-11 18:39:14 +09:00
Dean Herbert
6a88b8888b
Add basic support for child serialisation
2021-05-11 18:39:14 +09:00
Dean Herbert
95a497e9df
Remove unused interface class for simplicity
2021-05-11 18:39:14 +09:00
Dean Herbert
95a8f21ab2
Add the concept of skinnable target containers and mark a basic one for HUD elements
2021-05-11 18:39:14 +09:00
Dean Herbert
b9ab9342fa
Setup basics to allow extracting serializable content from skinnable Drawable
s
2021-05-11 18:39:14 +09:00
Dean Herbert
9c62c90cfc
Refactor SelectionBlueprint
and MoveSelectionEvent
to work in screen-space coordinates
...
Until now, the implementation of the overrides in `SelectionBlueprint`
have been confusing to the point where I would just implement by
trial-and-error (or copying from an existing implementation). This was
due to a combination of using "object" space coordinates
(ie. the thing the `Blueprint` is operating on) and screen-space coordinates.
This change switches all event related coordinates to screen-space,
which is how we already handle rotation/scale operations. With the
introduction of other editor types where the related objects are
drawables, this also makes a lot more sense.
2021-04-29 16:10:42 +09:00
Dean Herbert
8282f38eb7
Fix volume controls not supporting key repeat
2021-04-14 13:11:24 +09:00
Bartłomiej Dach
9ab1ad25eb
Merge branch 'master' into fix-leave-room-race-2
2021-01-30 13:41:04 +01:00
Dean Herbert
a61444690e
Remove all usage of CatchUnobservedExceptions
...
This should no longer be required with the recent framework side change
that stops a game from crashing on unobserved exceptions
(https://github.com/ppy/osu-framework/pull/4171 ).
2021-01-29 16:32:29 +09:00