1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-22 22:07:28 +08:00
Commit Graph

47713 Commits

Author SHA1 Message Date
Dean Herbert
02d8a6359a Update FilterMatchingTest and filter code to use ruleset's OnlineID
The tests were relying on the `RulesetID` being set to 0 in the example
beatmap, even though the ruleset *instance* was set to ID 5.

This explicitly adds that 0 value to show intent, and also removes the
incorrect specification of 5 (which would cause the convert filter tests
to fail).

Also updates the filter code to use `OnlineID`, which is required in
realm changes.
2022-01-10 12:30:34 +09:00
Dean Herbert
ed992eed64
Merge pull request #16382 from bdach/rankings-table-inactive
Fade out inactive player rows on user ranking table
2022-01-10 00:30:06 +09:00
Bartłomiej Dach
2e9ba40ae2
Add references to web implementation wrt property used 2022-01-09 14:46:15 +01:00
Bartłomiej Dach
12c8243a9b
Fade out inactive player rows on user ranking table 2022-01-09 14:42:26 +01:00
Bartłomiej Dach
82d6639a3b
Decouple rankings table test from online API 2022-01-09 14:42:19 +01:00
Dean Herbert
dcbeca2407
Merge pull request #16366 from bdach/fix-editor-text-box-precision
Fix effect point multiplier text box displaying too much decimal digits
2022-01-09 00:58:44 +09:00
Bartłomiej Dach
9370e84460
Fix effect point multiplier text box displaying too much decimal digits 2022-01-08 16:12:52 +01:00
Dean Herbert
34135138b6
Merge pull request #16355 from bdach/scoreboard-time
Add basic "time ago" display to leaderboards on beatmap overlay
2022-01-08 17:11:43 +09:00
Bartłomiej Dach
9e84e31eac
Add score time to beatmap set overlay scoreboard table 2022-01-07 19:18:16 +01:00
Bartłomiej Dach
87f7c7e691
Implement scoreboard-specific time formatting 2022-01-07 19:18:16 +01:00
Bartłomiej Dach
881fa2b86b
Add basic test scene for scoreboard time 2022-01-07 19:18:16 +01:00
Dean Herbert
f440aadcbc
Merge pull request #16341 from bdach/score-submission-test-failures
Fix intermittent failure in score submission test
2022-01-07 22:24:04 +09:00
Dean Herbert
398a67a4bc
Merge pull request #16350 from peppy/fix-ipc-location-test
Fix `IPCLocationTest` not waiting for load of component
2022-01-07 22:22:45 +09:00
Dean Herbert
12c3e56881 Fix IPCLocationTest not waiting for load of component
As seen at
https://github.com/ppy/osu/runs/4731480384?check_suite_focus=true.
2022-01-07 19:01:06 +09:00
Dan Balasescu
bf328dc9e0
Merge pull request #16291 from peppy/fix-mods-mutated-outside-lease
Fix `MultiplayerMatchSubScreen` mutating mods outside of bindable lease
2022-01-07 17:12:12 +09:00
Dean Herbert
ee0a2ce54c
Merge pull request #16347 from bdach/fix-toolbox-expand-button
Fix settings toolbox toggle button starting in incorrect state
2022-01-07 11:17:23 +09:00
Bartłomiej Dach
8f744c99ee
Fix settings toolbox toggle button starting in incorrect state
While displaying replays, the colour of the toolbox toggle button would
not match the actual state of the rest of the toolbox, i.e. both buttons
would be white, even though the "playback settings" section was expanded
and as such should have a yellow toggle button.

In the case of the replay player, the failure scenario was as follows:

1. `SettingsToolboxGroup` calls `updateExpanded()` in its BDL to update
   the initial state of the toolbox, including the toggle button
   colour, by adding a colour fade transform.

2. An ancestor of both the toolbox groups - `PlayerSettingsOverlay`,
   which is a `VisibilityContainer` - calls `FinishTransforms(true)` in
   its `LoadCompleteAsync()`, therefore instantly applying the colour
   from point (1) to the toggle button instantly.

3. However, `IconButton` inherits from `OsuAnimatedButton`. And
   `OsuAnimatedButton` changes its colour in `LoadComplete()`, therefore
   undoing the instant application from point (2).

This conjunction of circumstances is instrumental to reproducing the
bug, because if the `FinishTransforms(true)` call wasn't there, point
(3) wouldn't matter - the transform would get applied at some
indeterminate point in the future, ignoring the write from
`OsuAnimatedButton`.

As for the fix, move the `updateExpanded()` call in
`SettingsToolboxGroup` to `LoadComplete()` to avoid the above
unfortunate order. Applying initial visual state in `LoadComplete()` is
the idiomatic style of doing things these days anyhow.
2022-01-06 20:45:56 +01:00
Bartłomiej Dach
32b6bf64d0
Merge pull request #16342 from peppy/editor-toolbox-expand
Contract editor toolboxes when not in use
2022-01-06 19:31:41 +01:00
Bartłomiej Dach
f5742d3d2a
Merge branch 'master' into editor-toolbox-expand 2022-01-06 19:01:02 +01:00
Dean Herbert
e02863f780 Avoid accessing DrawWidth from invalidation 2022-01-07 01:24:30 +09:00
Dean Herbert
f703c5f038 Add comment and reduce how often ChildrenOfType is invoked in ExpandingButtonContainer 2022-01-06 23:38:54 +09:00
Dean Herbert
5aca2dd4ce Hide header text when it won't fit in the toolbox group 2022-01-06 23:08:50 +09:00
Dean Herbert
690b425380 Move enum local to usage 2022-01-06 22:56:56 +09:00
Dean Herbert
cea9cab4dc Use ExpandingButtonContainer in editor composer 2022-01-06 21:10:45 +09:00
Bartłomiej Dach
66613cbaa4
Wait for async continuation in score submission test
The previous assert step was optimistically assuming that the async
continuation that writes the value of
`FakeImportingPlayer.ImportedScore` always completes before it, but
that's not necessarily true even if the continuation is instant (it is
still subject to things like task scheduling and TPL thread pool
limits).

To ensure no spurious failures, swap out the assert step for an until
step instead.
2022-01-06 13:09:25 +01:00
Dean Herbert
5baaf356aa Split out SettingsToolboxGroup from PlayerSettingsGroup 2022-01-06 21:05:00 +09:00
Dean Herbert
77980196c5 Split out expanding container logic from settings sidebar 2022-01-06 21:02:29 +09:00
Bartłomiej Dach
84765b99b3
Handle score submission request in submission test scene
Was previously not handled at all, therefore displaying request failures
in the test log output. While that was mostly a red herring and
shouldn't have caused any actual *test* failures, it is still better to
handle this explicitly in a realistic manner.
2022-01-06 12:57:26 +01:00
Bartłomiej Dach
a9e4a0fd61
Merge pull request #16328 from peppy/editor-flip-over-origin
Change editor flip hotkeys to perform flips around origin
2022-01-06 10:26:14 +01:00
Bartłomiej Dach
f0797d4066
Merge branch 'master' into editor-flip-over-origin 2022-01-06 09:59:18 +01:00
Dan Balasescu
1d69eb629c
Merge pull request #16327 from peppy/fix-editor-playfield-centering
Fix editor playfield not being centered correctly
2022-01-06 16:11:12 +09:00
Dean Herbert
243a1a3cf7 Fix incorrect origin specification for SkinSelectionHandler flips 2022-01-06 14:47:44 +09:00
Dean Herbert
5c0494f3ba Remove unnecessary precondition check and disallow vertical catch flips for now 2022-01-06 14:39:29 +09:00
Dean Herbert
ee24713002 Fix single sliders not being flippable due to incorrect precondition 2022-01-06 14:37:13 +09:00
Bartłomiej Dach
e232c7bc85
Merge pull request #6035 from EVAST9919/page-selector
Implement PageSelector component
2022-01-05 22:50:04 +01:00
Bartłomiej Dach
7d195c4344
Merge branch 'master' into page-selector 2022-01-05 22:23:10 +01:00
Dean Herbert
6779503e57 Refactor logic to avoid TimelineSelectionHandler having to block base calls 2022-01-05 16:56:54 +09:00
Dean Herbert
866ae3472b Add global flip hotkeys 2022-01-05 16:48:07 +09:00
Dean Herbert
13cce50fa7 Remove existing handling of flip hotkeys 2022-01-05 16:30:42 +09:00
Dean Herbert
ef2a4aed9a Fix editor playfield not being centered correctly
This has come up multiple times, with mappers citing that they have
muscle memory for mapping based on the centre of the playfield being in
the centre of the window.

The original plan was to have a second toolbar on the right hand side of
the screen to balance the padding, but we're not at that point yet.
Easiest solution is to do what stable does and allow the left-hand
toolbar items to overlap the playfield underneath it.

In edge cases where the user is running at an aspect ratio that causes
overlaps, they can choose to collapse the toolbars down. We can probably
work on this UI/UX a bit more as we update designs to be more friendly
to such cases.
2022-01-05 16:05:18 +09:00
Dean Herbert
2bf6b55b19 Fix failing test due to changed reset page logic 2022-01-05 14:53:32 +09:00
Bartłomiej Dach
93bcebbcd5
Merge pull request #16321 from peppy/fix-cursor-culture-incorrect
Fix cursors sent to osu-web being potentially string formatted in incorrect culture
2022-01-04 19:27:14 +01:00
Dean Herbert
5ed69338a6 Add omission of pages when there are too many 2022-01-04 19:05:14 +09:00
Dean Herbert
86f72b71b1 Prepare tests and general structure to support omission of pages 2022-01-04 18:46:44 +09:00
Dean Herbert
e75c9519f3 Adjust font weighting on selection 2022-01-04 18:19:23 +09:00
Dean Herbert
5a11ee7810 Use OverlayColourProvider and fix font weight 2022-01-04 18:14:42 +09:00
Dean Herbert
d10b8c79b3 Remove pointless test coverage of DrawablePage 2022-01-04 17:53:24 +09:00
Dean Herbert
ee4f5c0e79 Rename button classes to make more sense 2022-01-04 17:52:40 +09:00
Dean Herbert
db58f5de8e Clean up unnecessary complexity 2022-01-04 17:51:37 +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