1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-11 13:37:25 +08:00
Commit Graph

24881 Commits

Author SHA1 Message Date
Salman Ahmed
f00799cc64 Remove unused using directive
...damn it
2021-05-15 18:36:47 +03:00
Salman Ahmed
243c8aa585 Add test coverage 2021-05-15 18:02:38 +03:00
Salman Ahmed
4c25fe750f Disallow beatmap skin to fall back to default HUD components
This should become a more generalized `AllowDefaultSkinFallback` when default legacy skin fallback is supported.
2021-05-15 14:32:16 +03:00
Dean Herbert
94b7e89ac0
Merge pull request #12747 from frenzibyte/current-star-rating
Allow changing current star difficulty of a `StarRatingDisplay`
2021-05-15 15:39:39 +09:00
Dean Herbert
bdcb1a624e
Merge pull request #12759 from Naxesss/beatmap-verifier-context
Encapsulate check arguments in context object
2021-05-15 15:39:12 +09:00
Dean Herbert
7632b8621e
Merge pull request #12805 from peppy/add-user-id-beatmap-metadata
Add database tracking of beatmap creator `user_id`s
2021-05-15 09:03:52 +09:00
Bartłomiej Dach
7665bdfbbb Merge branch 'master' into null-assignment-warning-enable 2021-05-15 01:08:34 +02:00
Bartłomiej Dach
69fc072429 Ignore skin component json data if deserialisation fails instead
Crashing was not really the best thing to do there given the preceding
code that already allowed a few continues in case of a missing file.
2021-05-15 01:08:11 +02:00
Bartłomiej Dach
b51d038088 Ignore possible path-related nulls
They're all in test code anyway, so any issue there will cause a test to
fail.
2021-05-15 00:09:34 +02:00
Bartłomiej Dach
fa6b5515b7 Ignore possible null from JsonConvert.DeserializeObject()
Nothing better can be done if a `null` is indeed returned.
2021-05-15 00:09:34 +02:00
Bartłomiej Dach
5b2b701915 Ignore possible null in GetResponseString()
A null there indicates a deserialisation error and therefore due to the
catch block immediately succeeding the changed line everything will
continue to work as intended.
2021-05-15 00:09:34 +02:00
Bartłomiej Dach
628e7a71ed Ignore possible nulls in Type.GetType() calls
They're mostly used in extensibility scenarios, so everything happens in
runtime. There is no better resolution than to crash with a null
reference exception.
2021-05-15 00:09:34 +02: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
Bartłomiej Dach
c9facf70f9 Use conditional nullability attribute
As it turns out, C# 8 provides an attribute that allows annotating that
an `out` parameter's nullability depends on the method's return value,
which is exactly what is desired here.
2021-05-15 00:09:34 +02:00
Bartłomiej Dach
aaa7c7eb05 Handle null case explicitly in SpectatorState.Equals()
Uses the usual pattern of two `ReferenceEquals` checks against `this`
and `null` before proceeding to inspect field values. Doing this causes
the compiler to infer that at the point that field values are checked,
`other` can no longer viably be `null`.
2021-05-14 23:58:07 +02:00
Bartłomiej Dach
044770f1a2 Locally suppress warning in SerializationReader
`SerializationReader` is not written in a form that would support
turning nullability checking on for the entire class. The biggest
problem there is the inner `DynamicDeserializer` static class, whose
members are initialised via an `initialize()` method, which the compiler
knows nothing about.

For this reason, just opt to suppress the single inspection about
returning a `null` from a method with a return type of `string` (rider
expects `string?`). It would have been also viable to enable nullability
checking for this one method, but that's pretty much the same thing and
adds no safety anyways, so just disable the warning to minimise
surprise.
2021-05-14 23:29:34 +02:00
Bartłomiej Dach
94d80f091f Merge branch 'master' into fix-deleting-skin-elements 2021-05-14 22:33:41 +02:00
Bartłomiej Dach
3d3c5028e6 Trim unnecessary array copy 2021-05-14 22:33:26 +02:00
Bartłomiej Dach
743b4fbff1 Pass correct member name to ArgumentExceptions 2021-05-14 22:16:37 +02:00
Bartłomiej Dach
876f53bf3b Fix copy-paste oversights in xmldoc & exception messages 2021-05-14 22:15:43 +02:00
Bartłomiej Dach
8b4e6d2911 Remove no longer necessary FinishTransforms(true) call
As the component no longer has any transition transforms applied.
2021-05-14 22:03:35 +02:00
Salman Ahmed
6cc678f497 Remove nullability and transition support from star rating display 2021-05-14 16:05:40 +03:00
Dan Balasescu
a1d63243a4
Merge pull request #12800 from frenzibyte/online-play-oversight
Fix online play subscreens not pushing player loaders when starting gameplay
2021-05-14 20:44:44 +09:00
Dean Herbert
67a99c83a3 Tidy bindable changed code up 2021-05-14 16:24:52 +09:00
Dean Herbert
fcb226bd20 Add local variable for regular access to HitObjects 2021-05-14 16:23:45 +09:00
Dean Herbert
d09da02673 Fix deleting skin elements not saving out to skin
Closes https://github.com/ppy/osu/issues/12786.
2021-05-14 16:03:22 +09:00
Dean Herbert
32ff406289 Add database tracking of beatmap creator user_ids 2021-05-14 15:40:29 +09:00
Salman Ahmed
8338f702c3 Remove not required null conditional 2021-05-14 09:32:56 +03:00
Dean Herbert
48672f8afd Add very basic test logic to ensure PlayerLoader is present for playlists 2021-05-14 15:02:36 +09:00
Dean Herbert
1d4bcbaa6e
Merge pull request #12796 from peppy/update-framework
Update framework
2021-05-14 14:43:54 +09:00
Dean Herbert
46e7d9e0ed Randomise the values displayed in the skinning toolbox
To stop the spam of "WYSI" comments everywhere. I guess I underestimated
the negative effect this would have.
2021-05-14 12:15:58 +09:00
Dean Herbert
b36c991ba1 Fix single case of incorrect usage 2021-05-14 12:04:38 +09:00
Naxess
a447f20095 Fix formatting of #nullable enable 2021-05-14 03:38:35 +02:00
Naxess
90e0b3374e
Add #nullable enable
Co-authored-by: Dean Herbert <pe@ppy.sh>
2021-05-14 03:34:50 +02:00
Salman Ahmed
9e8c0a7e70 Fix online play subscreens not pushing player loaders when starting gameplay 2021-05-14 04:25:29 +03:00
Dean Herbert
ddceafb1b0 Update framework 2021-05-14 09:38:25 +09:00
Bartłomiej Dach
6a64a705b8 Merge branch 'master' into skin-blueprint-aspect-lock 2021-05-13 17:53:00 +02:00
Bartłomiej Dach
25b1443c50 Remove dead branch and mark implementation as temporary
The previous implementation was checking if the `x0` or `x2` anchors
were selected to decide on which way to transfer the drawable's scale,
but that check actually ends up being always true for corner anchors. To
visualise, this is how the corner anchors correspond to `Anchor` flags:

    x0  x1  x2
    |   |   |
y0 -O---O---O-
    |   |   |
y1 -O---+---O-
    |   |   |
y2 -O---O---O-
    |   |   |

The Os indicate where the reference anchors are on a selection box.
The first conditional eliminates the middle ones, which makes sense.
But after excluding them from further deliberations (marking via X):

    x0  x1  x2
    |   |   |
y0 -O---X---O-
    |   |   |
y1 -X---+---X-
    |   |   |
y2 -O---X---O-
    |   |   |

The remaining anchors always have `x0` or `x2` set. So to avoid
confusion, just always transfer one way for now. At some point this
should be torn out in favour of an actual implementation of the desired
behaviour.
2021-05-13 17:50:12 +02:00
Dean Herbert
0fa90a80d4
Merge branch 'master' into skin-blueprint-aspect-lock 2021-05-13 23:38:53 +09:00
Dean Herbert
3ecbb9ec4b
Merge branch 'master' into skin-blueprint-anchor-origin 2021-05-13 23:38:04 +09:00
Dean Herbert
98830dadda
Merge pull request #12762 from peppy/skin-blueprint-visual-improvements
Improve the visual appearance of skin editor blueprints
2021-05-13 23:37:21 +09:00
Dean Herbert
cef39eb4fa
Merge pull request #12766 from peppy/stable-anchor-origin
Keep component positions stable when changing anchor/origin
2021-05-13 23:36:40 +09:00
Dean Herbert
caa3e1dca5
Merge pull request #12767 from peppy/save-on-forced-exit
Save skin editor changes on forced exit
2021-05-13 23:35:52 +09:00
Dean Herbert
4183a1c556
Merge pull request #12769 from peppy/remove-skinnable-hud-classes
Remove remaining test usage of SkinnableXXX HUD components
2021-05-13 22:56:18 +09:00
Dean Herbert
6c12cae105 Remove unnecessary property 2021-05-13 22:25:11 +09:00
Dean Herbert
c57a2f43fa Merge branch 'master' into skin-blueprint-visual-improvements 2021-05-13 22:22:42 +09:00
Dan Balasescu
63fbbc848e
Merge pull request #12778 from peppy/skin-editor-shortcut-fix
Change default skin editor shortcut to Ctrl+Shift+S
2021-05-13 22:14:03 +09:00
smoogipoo
4cf4817ad2 Remove redundant parens 2021-05-13 22:11:58 +09:00
Dan Balasescu
d2fdd1e521
Merge branch 'master' into stable-anchor-origin 2021-05-13 22:06:21 +09:00
Dan Balasescu
67f795cfa6
Merge branch 'master' into save-on-forced-exit 2021-05-13 22:00:38 +09:00