Commit Graph

63476 Commits

Author SHA1 Message Date
Bartłomiej Dach
3a2645efb1
Seal ModAutoplay playability flags
Can't do much more than that due to the unfortunate fact of Cinema
inheriting from Autoplay.
2023-10-31 16:15:10 +01:00
Bartłomiej Dach
7ea298a1b6
Add xmldoc to Mod playability flags 2023-10-31 16:13:44 +01:00
Dean Herbert
95d8ee8e9b
Merge pull request #25323 from bdach/fix-key-binding-test-failures
Fix key binding row fire-and-forgetting writes
2023-10-31 22:13:42 +09:00
Bartłomiej Dach
9f5a280bc2
Fix key binding row fire-and-forgetting writes
Intends to fix test failures as seen in https://github.com/ppy/osu/actions/runs/6692350567/job/18181352642#step:5:129

This is what happens if you carelessly fire and forget.

The working theory (that I'm not sure I have the tools to conclusively
confirm) is that the async write from the key binding changing could
fire _after_ the section is reset.

I briefly considered having the test wait for the change, but given that
the entirety of the surrounding flow is using sync operations, this just
looks like a bug to me. And there's no real sane way to inject async
into that flow due to dependence on `OsuButton.Action`.
2023-10-31 12:25:09 +01:00
Bartłomiej Dach
bc2acc3e93
Merge pull request #25318 from peppy/fix-follow-point-scrathces
Fix potential texture corruption when cropping gameplay textures of weird aspect ratios
2023-10-31 11:02:59 +01:00
Bartłomiej Dach
850866e7f4
Merge pull request #25316 from peppy/metronome-always-play-tick
Decouple metronome tick playback from pendulum movement
2023-10-31 09:37:29 +01:00
Dean Herbert
0d44b5af90
Fix potential texture corruption when cropping gameplay textures of weird aspet ratios
Closes https://github.com/ppy/osu/issues/25273.
2023-10-31 17:36:23 +09:00
Bartłomiej Dach
84fb0c63e5
Merge pull request #23823 from peppy/beat-divisor-select-text-on-click
Select text in beat divisor popover automatically
2023-10-31 09:34:44 +01:00
Bartłomiej Dach
144006fbe8
Update autoselect implementation to work correctly with framework changes 2023-10-31 08:38:22 +01:00
Bartłomiej Dach
8a68333425
Merge branch 'master' into beat-divisor-select-text-on-click 2023-10-31 08:36:53 +01:00
Bartłomiej Dach
af84704076
Merge pull request #25315 from peppy/fix-flaky-tests
Address some flaky tests from recent times
2023-10-31 08:30:19 +01:00
Dean Herbert
64efc3d251
Decouple metronome tick playback from pendulum movement
Not super happy about doing this, but it seems like it's in the best
interest of editor usability.
2023-10-31 15:33:46 +09:00
Dean Herbert
8c067dc584
Fix mod tests not waiting for presets to finish loading
See https://github.com/ppy/osu/actions/runs/6692350567/job/18181352850.
2023-10-31 14:53:07 +09:00
Dean Herbert
7ceced7012
Scope TestPauseWithLargeOffset to focus on what matters
See https://github.com/ppy/osu/actions/runs/6693917410/job/18186111009

This test is to make sure we don't seek before the original
pause time, so I've exposed that value precisely to avoid
CI woes.
2023-10-31 14:47:04 +09:00
Dean Herbert
d379e553da
Fix back-to-front logging 2023-10-31 14:31:26 +09:00
Dean Herbert
bdd3f2847b
Add an extra storyboard sample to avoid intermittent failures in TestStoryboardSamplesStopOnSkip
Probably CI running slow timing balls.

The point of failure is `waitUntilStoryboardSamplesPlay()`
after already testing the important part of the test (that
the samples stop on skip) so let's give it another possible
point to recover.

See https://github.com/ppy/osu/actions/runs/6698399814/job/18201753701.
2023-10-31 14:28:40 +09:00
Dean Herbert
66b84d02cb
Add note about TestGameplayExitFlow failure, and ignore for now
See:
https://github.com/ppy/osu/actions/runs/6695995685/job/18194110641
https://github.com/ppy/osu/actions/runs/6700910613/job/18208272419
2023-10-31 14:27:55 +09:00
Dean Herbert
89444d5544
Fix export test still occasionally failing due to file write in progress
https://github.com/ppy/osu/actions/runs/6701591401/job/18209826074

Basically, `File.Move` may not be an atomic operation.
2023-10-31 14:00:49 +09:00
Dean Herbert
37ec10d4f5
Fix TestSongSelectScrollHandling not waiting for VolumeOverlay to load
See https://github.com/ppy/osu/actions/runs/6701786492/job/18210372721.
2023-10-31 13:49:53 +09:00
Dean Herbert
fa220d34de
Merge pull request #25272 from frenzibyte/use-scale-adjust-for-player-max-dimensions-test-scene
Fix `TestScenePlayerMaxDimensions` texture loading process bottlenecking CI
2023-10-31 13:36:30 +09:00
Dean Herbert
a3dc9a73b1
Revert behaviour changes of MaxDimensions test and ignore instead 2023-10-31 13:36:10 +09:00
Dean Herbert
0ffd5104ef
Merge pull request #25274 from frenzibyte/tournament-display-team-seed
Support displaying team seeds in tournament client
2023-10-31 13:34:13 +09:00
Dean Herbert
bb6555c901
Merge branch 'master' into tournament-display-team-seed 2023-10-31 12:45:21 +09:00
Dean Herbert
feeb95e4c3
Adjust DrawableTeamTitleWithHeader to match new layout 2023-10-31 12:44:43 +09:00
Dean Herbert
87c9df937f
Move team seed to below team name 2023-10-31 12:40:21 +09:00
Dean Herbert
3060cf1438
Merge pull request #25286 from frenzibyte/search-text-box-select-all
Automatically select existing search text when opening settings
2023-10-31 12:14:00 +09:00
Dean Herbert
5a1865ed01
Merge pull request #25311 from bdach/spinner-rotation-tracker-incorrect-assertion 2023-10-31 10:38:12 +09:00
Bartłomiej Dach
12ef93ac3b
Remove no-longer-valid assertion 2023-10-30 21:31:34 +01:00
Bartłomiej Dach
e5b51f769c
Fix incorrect assertion placement in spinner rotation tracker
Checking the delta after the application of rate is not correct. The
delta is in screen-space *before* the rate from rate-changing mods were
applied; the point of the application of the rate is to compensate for
the fact that the spinner is still judged in "track time" - but the goal
is to keep the spinner's difficulty *independent* of rate, which means
that with DT active the user's spin is "twice as effective" to
compensate for the fact that the spinner is twice as short in real time.

In another formulation, with DT active, the user gets to record replay
frames "half as often" as in normal gameplay.
2023-10-30 21:28:29 +01:00
Bartłomiej Dach
f2c0bc8218
Add failing test case 2023-10-30 21:28:26 +01:00
Bartłomiej Dach
06508d08fe
Delete outdated test 2023-10-30 20:22:41 +01:00
Bartłomiej Dach
88e10dd051
Update framework 2023-10-30 20:19:52 +01:00
Dean Herbert
f706fd2fca
Merge pull request #25307 from bdach/slider-velocity-undo
Fix slider velocity changes not being undone correctly
2023-10-31 01:44:18 +09:00
Bartłomiej Dach
30ffb15868
Merge pull request #25304 from peppy/fix-click-through-timeline
Fix right clicks on timeline potentially not working as expected
2023-10-30 15:03:21 +01:00
Bartłomiej Dach
b2d3aa982d
Merge branch 'master' into fix-click-through-timeline 2023-10-30 12:52:00 +01:00
Bartłomiej Dach
cea24298cb
Privatise setters 2023-10-30 12:42:34 +01:00
Bartłomiej Dach
de89b7e53c
Fix slider velocity changes not being undone correctly
Closes https://github.com/ppy/osu/issues/25239.

`LegacyEditorBeatmapPatcher.processHitObjectLocalData()` was already
supposed to be handling changes to hitobjects that will show up neither
when comparing the hitobjects themselves or the timing point with
"legacy" info stripped - so, in other words, changes to slider velocity
and samples.

However, a change to slider velocity requires default application to
take effect, so just resetting the value would visually fix the timeline
marker but not change the actual object. Calling
`EditorBeatmap.Update()` fixes this by way of triggering default
re-application.

This could probably be smarter (by only invoking the update when
strictly necessary, etc.) - but I'm not sure it's worth the hassle. This
is intended to be a quick fix, rather than a complete solution - the
complete solution would indeed likely entail a wholesale restructuring
of the editor's change handling.
2023-10-30 10:59:02 +01:00
Bartłomiej Dach
b3369dbb7b
Add failing test for slider velocity 2023-10-30 10:57:48 +01:00
Bartłomiej Dach
e1ff0d12c6
Update tests to NUnit-style assertions 2023-10-30 10:55:26 +01:00
Bartłomiej Dach
0ed5f274f6
Enable NRT in TestSceneSliderVelocityAdjust 2023-10-30 10:48:31 +01:00
Dean Herbert
fbba3787d1
Merge pull request #25190 from frenzibyte/match-skin-element-animation-support
Match capability of animating legacy skin elements with osu!(stable)
2023-10-30 18:25:06 +09:00
Dean Herbert
8828562512
Merge pull request #25277 from Susko3/fix-cut-in-filter-textbox
Fix cut and copy not working in song select search filter textbox
2023-10-30 18:18:46 +09:00
Bartłomiej Dach
2dc2469507
Merge pull request #25303 from peppy/last-played-import-score-update
Update the last played date of a beatmap when importing a replay by the local user
2023-10-30 10:12:27 +01:00
Dean Herbert
63e6eaf538
Fix failing tests 2023-10-30 18:06:11 +09:00
Dean Herbert
57d88a0ac4
Fix right clicks on timeline objects potentially getting eaten by playfield area
`SelectionHandler` is receiving input from anywhere out of necessity:

19f892687a/osu.Game/Screens/Edit/Compose/Components/SelectionHandler.cs (L119-L125)

Also important is that `BlueprintContainer` will selectively not block
right clicks to make sure they fall through to the
`ContextMenuContainer`:

19f892687a/osu.Game/Screens/Edit/Compose/Components/BlueprintContainer.cs (L122-L126)

But because the whole editor is sharing a `ContextMenuContainer` and
it's at a higher level than both components, we observe here the
playfield's `SelectionHandler` intercepting the right click before it
can reach the `ContextMenuContainer`.

The fix here is similar to what we're already doing in
`TimelineBlueprintContaienr`.
2023-10-30 18:06:11 +09:00
Dean Herbert
6be02966b9
Add test coverage of failing context menu display 2023-10-30 18:06:11 +09:00
Salman Ahmed
39abb8e408 Only run "select all on focus" behaviour on desktop platforms 2023-10-30 11:54:19 +03:00
Dean Herbert
66fa09ba66
Merge pull request #25287 from frenzibyte/fix-user-profile-support-banners
Update user profile overlay to show more than one tournament banner
2023-10-30 17:32:20 +09:00
Bartłomiej Dach
a000c06900
Merge branch 'master' into last-played-import-score-update 2023-10-30 09:29:07 +01:00
Bartłomiej Dach
0dfb41b796
Add test coverage for not updating LastPlayed due to newer plays 2023-10-30 09:28:37 +01:00