Commit Graph

48848 Commits

Author SHA1 Message Date
9a8569545e Merge pull request #16218 from peppy/mouse-wheel-volume-test-reliability
Adjust testing methodology to improve reliability of mosue wheel volume adjust tests
2021-12-23 14:23:05 +09:00
b0df787b1a Move public method up and add xmldoc to second public method 2021-12-23 14:13:57 +09:00
60c9827187 Merge branch 'master' into move-many-slider-nodes-at-once 2021-12-23 14:11:04 +09:00
a4d9592caf Merge pull request #16217 from peppy/fix-drawable-collection-list-item-mutation-error
Fix potential crash from cross-thread drawable mutation in collection management
2021-12-23 13:55:05 +09:00
d31c9db08b Adjust testing methodology to improve reliability of mosue wheel volume adjust tests
There was previously a potential in headless runs for timing
discrepancies to cause the volume to never get adjusted.

As seen at https://github.com/peppy/osu/runs/4604610951?check_suite_focus=true.
2021-12-23 13:25:24 +09:00
d69552fbcf Fix potential crash from cross-thread drawable mutation in collection management
As seen at https://github.com/peppy/osu/runs/4613800663?check_suite_focus=true.
2021-12-23 13:21:17 +09:00
e1b539fa9e Merge pull request #16213 from peppy/working-beatmap-live
Tidy up `WorkingBeatmap`
2021-12-23 13:02:37 +09:00
c0add5661e Merge pull request #16214 from bdach/beatmap-listing-overlay-flaky-hide
Fix placeholder drawables on beatmap listing not always showing correctly
2021-12-23 11:56:06 +09:00
25e38560ce Fix placeholder drawables on beatmap listing not always hiding correctly
`BeatmapListingOverlay.addContentToPlaceholder()`, in order to make
transitions between different beatmap listing content (whether it is
actual cards, or placeholders for no beatmaps found/supporter-specific
filters chosen), would set `BypassAutoSizeAxes = Y` on content as it is
fading out, to make the transition smoother. The property in question
was supposed to be getting restored to `None` on the next show.

In testing scenarios, it sometimes turned out that this wasn't the case,
therefore making the placeholders effectively not show - while they
were present and fully opaque, they would be the only child of
an auto-sized container with `BypassAutoSizeAxes = Y`, so the parent
auto-sized to a zero height, which logically follows from the premise,
but is not what was desired.

This in turn was caused by the fact that the `BypassAutoSizeAxes = Y`
set was scheduled, and sometimes it would be scheduled in such a way
that the drawable would cease to be present on the next frame due to its
alpha being past the cutoff point of 0.0001. Therefore the scheduled set
would not execute until the *next* time the placeholder was shown,
therefore causing the bug.

Fix by ensuring that the placeholder drawables are always present if
their schedulers have any tasks enqueued, on top of the usual checks of
alpha and scale performed via the base implementation.
2021-12-22 15:05:23 +01:00
02fa1c21b7 Adjust existing placeholder test to demonstrate failure case 2021-12-22 15:03:20 +01:00
f179ff33c9 Remove all NRT changes
This reverts commit bb9877adab.
2021-12-22 21:02:06 +09:00
bb9877adab Reapply IWorkingBeatmap nullability fixed 2021-12-22 20:48:48 +09:00
67e6b50c12 Merge pull request #16135 from stanriders/refactor-diffcalc
Slightly refactor difficulty and pp calculators
2021-12-22 19:44:02 +09:00
fa5ee5f72c Merge pull request #16212 from peppy/fix-beatmap-leaderboard-global-reference
Fix potential errors thrown during beatmap leaderboard display due to incorrect beatmap reference
2021-12-22 19:26:32 +09:00
bc47801cbb Revert "Apply NRT to WorkingBeatmap"
This reverts commit 9e17d7d4e3.
2021-12-22 19:14:18 +09:00
ef20182a34 Rewrite test to check selection state during and after new control point placement 2021-12-22 10:57:39 +01:00
9e17d7d4e3 Apply NRT to WorkingBeatmap 2021-12-22 18:41:45 +09:00
c3fada1926 Replace assertion with soft null check
Surrounding `OnDrag{Start,End}` methods did so already.
2021-12-22 10:33:08 +01:00
6330fa5dc5 Select newly created control point 2021-12-22 10:33:07 +01:00
53c0a6708f Move public accessor properties to top of file 2021-12-22 18:25:09 +09:00
a5f77a86ef Move load methods and rename loadedTrack to match other private fields 2021-12-22 18:24:51 +09:00
7344c87b16 Remove RecyclableLazy 2021-12-22 18:18:12 +09:00
f3f491374b Remove unused load checks 2021-12-22 18:17:00 +09:00
3c95497ed7 Reorder methods to hopefully make more sense 2021-12-22 18:17:00 +09:00
e38e4c0adc Enable NRT on IWorkingBeatmap 2021-12-22 18:17:00 +09:00
967419c9ac Remove BeatmapSetInfo and Metadata from interface
There were very few accesses to this, and after realm they should all be
done via the `BeatmapInfo`, so let's remove this.
2021-12-22 18:17:00 +09:00
1b0af78831 Simplify WorkingBeatmap in multiple ways
Just a clean-up pass.
2021-12-22 18:17:00 +09:00
b38b300159 Convert BeatmapMetadata access to be via a computed property 2021-12-22 18:17:00 +09:00
ea7d2c06fc Merge pull request #16206 from peppy/fix-collection-import-test-cleanup
Fix `ImportCollectionsTest.TestSaveAndReload` not cleaning up before run
2021-12-22 18:16:48 +09:00
307d3709e0 Add failing test steps for selection behaviour on new point creation 2021-12-22 09:32:38 +01:00
5b3a154431 Fix potential errors thrown during beatmap leaderboard display due to incorrect beatmap reference
Specifically, the global `BeatmapInfo` is referenced inside the web
request's success callback, and used to attempt population via methods
which expect non-null beatmap inputs.

Closes #16211.
2021-12-22 17:24:48 +09:00
e22745397d Fix right click deselecting clicked path piece with control held 2021-12-22 08:55:26 +01:00
9973db3981 Add failing test steps for right click behaviour 2021-12-22 08:40:17 +01:00
a866572ca8 Add comment regarding host name choice 2021-12-22 15:44:47 +09:00
cfdfe81afb Merge pull request #16205 from smoogipoo/fix-multiplayer-tests
Fix multiplayer test failures when checking for parted room
2021-12-22 13:42:05 +09:00
f81e32149b Fix ImportCollectionsTest.TestSaveAndReload not cleaning up before/after run 2021-12-22 13:38:20 +09:00
a88800c99a Merge pull request #16198 from smoogipoo/fix-current-item-before-population
Fix delete button showing on current item before beatmap retrieval
2021-12-22 13:15:07 +09:00
24c6f8fafa Fix multiplayer test failures when checking for parted room 2021-12-22 12:55:37 +09:00
98f044881e Merge branch 'master' into refactor-diffcalc 2021-12-22 12:31:28 +09:00
e50609c546 Rename method 2021-12-22 12:28:07 +09:00
7bc5079485 Merge pull request #16201 from bdach/timeline-blueprint-contrast-improvement
Improve contrast of timeline blueprint foreground content for pastel combo colours
2021-12-22 11:33:29 +09:00
ee64ab6383 Fix delete button test failures
Can be tested by adding a Thread.Sleep() in
DrawableRoomPlaylistItem.load().
2021-12-22 09:55:19 +09:00
c71942a350 Merge pull request #16200 from bdach/lookup-cache-racing
Fix online lookup caches potentially getting stuck
2021-12-22 09:48:58 +09:00
dca081979f Merge pull request #16199 from peppy/fix-custom-directory-tests
Ensure `CustomDataDirectoryTest` methods use a fresh directory to avoid IO errors
2021-12-21 13:56:07 +01:00
e35a8cab65 Merge branch 'master' into fix-custom-directory-tests 2021-12-21 13:08:27 +01:00
7ab1c0c99d Improve contrast of timeline blueprint foreground content for pastel combo colours 2021-12-21 12:54:17 +01:00
e715bff535 Fix selections including head not correctly dragging if not started from head 2021-12-21 12:35:48 +01:00
adfadc13f7 Add test case for dragging selection including slider head 2021-12-21 12:34:55 +01:00
40b3ce0ade Clean up comments 2021-12-21 14:03:24 +03:00
88436d51ae Remove using 2021-12-21 13:44:20 +03:00