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

23510 Commits

Author SHA1 Message Date
Dan Balasescu
a25b21b98f
Merge pull request #11955 from peppy/fix-multiplayer-beatmap-selection-exiting-game
Fix selecting a beatmap at the multiplayer match screen exiting the match
2021-03-03 19:40:28 +09:00
smoogipoo
6affe33fb2 Fix another test scene 2021-03-03 19:40:19 +09:00
smoogipoo
012b48dbe5 Remove explicit public definition
Interface members are public by default.
2021-03-03 19:03:45 +09:00
Dean Herbert
002646370c Move bindable logic in MouseSettings to LoadComplete 2021-03-03 16:47:42 +09:00
Dean Herbert
0ede28da2f Fix test failures due to missing dependency 2021-03-03 15:24:55 +09:00
Dean Herbert
cb4c3503a0 Confirm exiting a multiplayer match 2021-03-03 14:54:18 +09:00
Dean Herbert
d332fd2414 Handle case where local user tries to change beatmap while not the host 2021-03-03 14:53:47 +09:00
Dean Herbert
7dce9b04fa Add a more basic ConfirmDialog implementation 2021-03-03 14:50:45 +09:00
Dean Herbert
7c59040082 Re-present even when already the current beatmap
This feels better and closer to what a user would expect.
2021-03-03 14:17:07 +09:00
Dean Herbert
fcea900a53 Move main menu (song select) presentation logic to a local implementation
Reduces cross-dependencies between OsuGame and MainMenu.
2021-03-03 14:13:51 +09:00
Dean Herbert
36e1fb6da8 Add flow to allow MatchSubScreen to handle beatmap presentation locally 2021-03-03 14:13:51 +09:00
Dean Herbert
6e75ebbb06 Add interface to handle local beatmap presentation logic 2021-03-03 14:13:48 +09:00
Bartłomiej Dach
42c3309d49 Use ruleset criteria in parsing and filtering 2021-03-02 20:11:21 +01:00
Bartłomiej Dach
c375be6b07 Instantiate ruleset criteria 2021-03-02 20:10:03 +01:00
Bartłomiej Dach
14e249a134 Add ruleset interface for extending filter criteria 2021-03-02 20:07:11 +01:00
Bartłomiej Dach
e46543a4a9 Constrain operator parsing better 2021-03-02 19:56:36 +01:00
Bartłomiej Dach
26736d990f Enable filter parsing extensibility 2021-03-02 19:42:47 +01:00
Bartłomiej Dach
3b125a26a8 Add test coverage 2021-03-02 19:21:03 +01:00
Bartłomiej Dach
40a28367c6 Fix restore-to-default buttons never showing if initially hidden 2021-03-02 18:50:33 +01:00
Dan Balasescu
dc7573f7c7
Merge pull request #11943 from peppy/remove-simple-finalizers
Remove easy to remove finalizers
2021-03-02 20:53:09 +09:00
Dan Balasescu
2aae9b6600
Merge branch 'master' into remove-working-beatmap-finalizer 2021-03-02 19:14:16 +09:00
Dan Balasescu
20825b4b78
Merge pull request #11945 from peppy/fix-confine-setting-disable-mode
Fix confine mode dropdown becoming visible again after filtering
2021-03-02 19:06:49 +09:00
smoogipoo
30ff0b83c1 Fix test failures due to unpopulated room 2021-03-02 19:06:21 +09:00
Dean Herbert
0300a55447 Update framework 2021-03-02 18:00:50 +09:00
Dean Herbert
6372a0265a Fix confine mode dropdown becoming visible again after filtering
Changes from a hidden to a disabled state, with a tooltip explaining
why.

Closes #11851.
2021-03-02 17:44:58 +09:00
Dean Herbert
103dd4a6ce Remove WorkingBeatmap's finalizer 2021-03-02 16:14:43 +09:00
Dean Herbert
c4ba045df1 Add note about finalizers required for audio store clean-up 2021-03-02 16:07:51 +09:00
Dean Herbert
fa95929121 Remove easy to remove finalizers 2021-03-02 16:07:09 +09:00
dependabot-preview[bot]
7829a0636e
Bump Sentry from 3.0.1 to 3.0.7
Bumps [Sentry](https://github.com/getsentry/sentry-dotnet) from 3.0.1 to 3.0.7.
- [Release notes](https://github.com/getsentry/sentry-dotnet/releases)
- [Changelog](https://github.com/getsentry/sentry-dotnet/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-dotnet/compare/3.0.1...3.0.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-02 00:43:47 +00:00
Dean Herbert
22da76c510
Merge pull request #11937 from ppy/dependabot/nuget/SharpCompress-0.28.1
Bump SharpCompress from 0.27.1 to 0.28.1
2021-03-02 09:42:53 +09:00
Salman Ahmed
2609b22d53 Replace usage of CurrentModeRank in line with API change 2021-03-01 23:07:25 +03:00
dependabot-preview[bot]
9db37e62d8
Bump Microsoft.AspNetCore.SignalR.Protocols.MessagePack
Bumps [Microsoft.AspNetCore.SignalR.Protocols.MessagePack](https://github.com/dotnet/aspnetcore) from 5.0.2 to 5.0.3.
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Commits](https://github.com/dotnet/aspnetcore/compare/v5.0.2...v5.0.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 20:05:53 +00:00
dependabot-preview[bot]
2d3c3c18d4
Bump SharpCompress from 0.27.1 to 0.28.1
Bumps [SharpCompress](https://github.com/adamhathcock/sharpcompress) from 0.27.1 to 0.28.1.
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.27.1...0.28.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 20:05:35 +00:00
Salman Ahmed
fe54a51b5a Remove UserRanks object and move to outer country_rank property 2021-03-01 22:42:20 +03:00
smoogipoo
7adb33f40e Fix beatmap getting nulled due to failing web request 2021-03-01 17:24:54 +09:00
smoogipoo
f7e4cfa4d0 Fix initial room settings not being returned correctly 2021-03-01 17:24:32 +09:00
smoogipoo
97bb217830 Fix test room playlist items not getting ids 2021-03-01 17:24:05 +09:00
Dean Herbert
3bb46cd8cc
Merge pull request #11916 from bdach/restore-default-transform-mutation
Fix restore default button potentially mutating transforms during load
2021-02-28 12:40:17 +09:00
Bartłomiej Dach
7e17c5ab71 Trim yet another array copy 2021-02-27 15:46:18 +01:00
Bartłomiej Dach
1e56d2cbba Make SettingSourceAttribute implement IComparable 2021-02-27 15:30:08 +01:00
Bartłomiej Dach
528de5869e Fix multiple enumerations when ordering setting sources
This was not spotted previously, because the base `Attribute` overrides
`Equals()` to have semantics similar to structs (per-field equality) by
using reflection. That masked the issue when strings were used, and
migrating to `LocalisableString` revealed it, as that struct's
implementation of equality currently uses instance checks.

Whether `LocalisableString.Equals()` is the correct implementation may
still be up for discussion, but allowing multiple enumeration is wrong
anyway, since the underlying enumerables are live (one especially is a
yield iterator, causing new object instances to be allocated).
2021-02-27 14:58:01 +01:00
Bartłomiej Dach
52e81385a6 Fix restore default button mutating transforms during load 2021-02-27 11:39:18 +01:00
Dean Herbert
4fd8501c86 Remove unnecessary using (underlying enumerator change) 2021-02-26 20:03:03 +09:00
Dean Herbert
98d525d1db Update framework 2021-02-26 19:56:10 +09:00
Dan Balasescu
b1702273c8
Merge pull request #11904 from peppy/editor-centralise-selection-change-handling
Centralise cases of performing actions on the current selection
2021-02-26 19:01:30 +09:00
Dan Balasescu
e80db89def
Merge pull request #11903 from peppy/fix-chat-post-error-display
Show API human readable error message when chat posting fails
2021-02-26 19:00:17 +09:00
Dan Balasescu
d7f3519bd7
Merge pull request #11907 from peppy/fix-import-from-stable-no-beatmaps-message
Fix "failed to import" message showing when importing from a stable install with no beatmaps
2021-02-26 18:45:54 +09:00
Dean Herbert
7e6bd0e995 Fix "failed to import" message showing when importing from a stable install with no beatmaps 2021-02-26 17:30:59 +09:00
Dean Herbert
3e65dfb9e7 Reduce allocation overhead when notification overlay has visible notifications 2021-02-26 17:11:47 +09:00
Dean Herbert
cd1c1bf534 Centralise cases of performing actions on the current selection
By moving this to a central location, we can avoid invoking the
EditorChangeHandler when there is no selection made. This helps
alleviate the issue pointed out in
https://github.com/ppy/osu/issues/11901, but not fix it completely.
2021-02-26 14:15:13 +09:00
Dean Herbert
254f9bb58b Show API human readable error message when chat posting fails
Closes #11902.
2021-02-26 13:38:00 +09:00
Bartłomiej Dach
d0decc73be Merge branch 'master' into beatmap-difficulty-cache-nullable 2021-02-25 19:40:38 +01:00
Dean Herbert
a792c3f13c
Merge pull request #11900 from peppy/update-bpm-with-mods
Update the displayed BPM at song select with rate adjust mods
2021-02-26 00:25:55 +09:00
smoogipoo
01a4815412 Make labels disappear on null beatmap/no hitobjects 2021-02-25 23:36:02 +09:00
Dan Balasescu
46ea0f44eb
Merge branch 'master' into beatmap-difficulty-cache-nullable 2021-02-25 22:52:15 +09:00
Dan Balasescu
8e12dd98f9
Merge pull request #11897 from peppy/fix-song-select-star-rating-display-zero-flashing
Fix the star rating display at song select flashing to zero when changing mods
2021-02-25 22:51:35 +09:00
smoogipoo
c1f27ba938 Merge branch 'master' into fix-song-select-star-rating-display-zero-flashing 2021-02-25 22:13:48 +09:00
smoogipoo
c3eb44137b Move ValueChanged bind back to load() 2021-02-25 22:09:41 +09:00
smoogipoo
649ce20e35 Fix up super weird and super wrong DI 2021-02-25 22:01:53 +09:00
smoogipoo
b090a82b35 Merge branch 'master' into update-bpm-with-mods 2021-02-25 21:58:54 +09:00
smoogipoo
de417a660d Make BPM update with changes in mod settings 2021-02-25 21:51:32 +09:00
smoogipoo
98313a98bf DI mods in parent class and pass them down 2021-02-25 21:48:02 +09:00
Dean Herbert
8004652d27
Merge branch 'master' into optimised-has-flag-checks 2021-02-25 21:24:39 +09:00
Dean Herbert
3802cb29a4 Fix failing tests doing reference comparisons between string and LocalisedString 2021-02-25 17:49:54 +09:00
Dean Herbert
6d1c5979ea Update framework 2021-02-25 17:28:59 +09:00
Dean Herbert
90e8308716 Merge branch 'master' into localisation-refactor-framework 2021-02-25 17:28:55 +09:00
Dean Herbert
2db4b793d7 Also handle most common BPM display 2021-02-25 17:05:00 +09:00
Dean Herbert
31c52bd585 Update the displayed BPM at song select with rate adjust mods
This only covers constant rate rate adjust mods. Mods like wind up/wind
down will need a more complex implementation which we haven't really
planned yet.
2021-02-25 17:00:44 +09:00
Dean Herbert
5fa9bf61b6 Update xmldoc 2021-02-25 16:22:40 +09:00
Dean Herbert
03771ce8ec Allow determining a BeatmapDifficultyCache's bindable return's completion state via nullability 2021-02-25 16:19:01 +09:00
Dean Herbert
9f3ceb99eb Fix the star rating display at song select flashing to zero when changing mods
Due to the use of bindable flow provided by `BeatmapDifficultyCache` in
this usage, the display would briefly flash to zero while difficulty
calculation was still running (as there is no way for a consumer of the
provided bindable to know whether the returned 0 is an actual 0 SR or a
"pending" calculation).

While I hope to fix this by making the bindable flow return nullable
values, I think this particular use case works better with non-bindable
flow so have switched across to that.
2021-02-25 16:05:13 +09:00
smoogipoo
dff1d80f39 Update HasFlag usages to HasFlagFast 2021-02-25 15:38:56 +09:00
Dean Herbert
2c8e62ae35 Fix toolbar not completing enough of layout to propagate hotkeys to buttons before initial display 2021-02-25 14:52:51 +09:00
Dean Herbert
e82eaffaed Flip order back to original for romanisable strings 2021-02-25 14:14:07 +09:00
Dean Herbert
4cdde42228 Remove unnecessary backing field 2021-02-25 14:08:01 +09:00
Dean Herbert
a362382d38 Add back more correct null checks 2021-02-25 14:06:21 +09:00
Dean Herbert
67773c42ef
Merge pull request #11888 from H2n9/modtimeramp-new-behaviour 2021-02-25 14:01:57 +09:00
Bartłomiej Dach
421b7877d4 Avoid mixing precision across time ramp bindables
Bears no functional difference, it's just a bit less of an eyesore.
2021-02-24 19:16:10 +01:00
Ronnie Moir
73d6a3687e Change rate correction logic to be more explicit 2021-02-24 14:40:56 +00:00
Dan Balasescu
3e2b21a9b4
Merge pull request #11892 from peppy/allow-collection-name-collisions
Fix crash on two collections existing with the same name
2021-02-24 23:08:05 +09:00
Dan Balasescu
a7d10630e0
Merge pull request #11893 from peppy/fix-request-queue-reference-holding
Fix requests being indefinitely queued when user is offline
2021-02-24 23:07:02 +09:00
Dean Herbert
fa6d797adf Remove redundant prefix 2021-02-24 20:30:17 +09:00
Dean Herbert
9ed8d902f7 Fix requests being indefinitely queued when user is offline 2021-02-24 19:57:42 +09:00
Dean Herbert
5dc0aefb2b Cancel request on leaving results screen 2021-02-24 19:54:52 +09:00
Dean Herbert
0c202e0777
Merge branch 'master' into fix-selecting-incompatible-freemods 2021-02-24 19:24:04 +09:00
Dean Herbert
165da32044 Fix dropdown crash on collection name collisions 2021-02-24 18:41:42 +09:00
Dan Balasescu
c0f21c8cbe
Merge branch 'master' into fix-selecting-incompatible-freemods 2021-02-24 15:10:48 +09:00
smoogipoo
0b44d2483b Make some properties virtual
I think they were intended to be this way from the beginning.
2021-02-24 15:03:41 +09:00
smoogipoo
14160b897e Fix references to ModSuddenDeath 2021-02-24 14:44:53 +09:00
smoogipoo
30a58691f0 Make SD and PF incompatible with each other 2021-02-24 14:34:37 +09:00
Dan Balasescu
a229c3a0f4
Merge pull request #11882 from peppy/fix-import-collections-twice-crash
Fix importing collections twice from stable causing a hard crash
2021-02-24 14:31:54 +09:00
Dan Balasescu
de48b7c8c8
Merge branch 'master' into fix-import-collections-twice-crash 2021-02-24 13:25:31 +09:00
Dan Balasescu
90e515aadd
Merge branch 'master' into disable-all-mouse-buttons 2021-02-24 13:25:28 +09:00
Dan Balasescu
cfea4c7d4d
Merge pull request #11881 from peppy/disable-hub-connections-on-ios
Disable multiplayer/spectator on iOS until it can be supported again
2021-02-24 13:09:03 +09:00
Dean Herbert
e1f71038e3 Remove unncessary action 2021-02-24 12:13:55 +09:00
Dean Herbert
71182347d6 Also add a notifiation when trying to enter the multiplayer screen
Turns out the only check required to get into this screen was that the
API was online, which it always is even if the multiplayer component
isn't.

This provides a better end-user experience.
2021-02-24 11:30:14 +09:00
Ronnie Moir
f6d3cd6413 Change SamplePlaybackWithRateMods to use rate calulated from the sample
Replace hardcoded numbers
2021-02-23 21:25:59 +00:00
Bartłomiej Dach
6dc0cf5ea9
Merge branch 'master' into fix-import-collections-twice-crash 2021-02-23 22:14:25 +01:00
Ronnie Moir
7394c62cc8 Make ModTimeRamp and ModRateAdjust incompatible 2021-02-23 18:10:03 +00:00
Ronnie Moir
a6e840634b Adjust scrubbing behaviour to allow dragging through rate values 2021-02-23 15:52:53 +00:00
Ronnie Moir
f45cedeb85 Adjust initial and final rate ranges and prevent them from overlapping 2021-02-23 15:38:09 +00:00
Dean Herbert
e679a1916f
Merge pull request #11833 from frenzibyte/fix-pofl-on-cooldown
Keep pausing gameplay on focus loss if cannot on first attempt
2021-02-24 00:15:58 +09:00
Dean Herbert
c514233141 Fix importing collections twice from stable causing a hard crash
Somehow a bindable equality check failure got through review. Not sure
if there's some way to protect against this going forward, but we may
want to.
2021-02-23 15:57:43 +09:00
Dean Herbert
664d243003 Disable multiplayer/spectator on iOS until it can be supported again 2021-02-23 15:22:46 +09:00
Dean Herbert
ec4b770cba Remove unused using statement 2021-02-23 14:56:03 +09:00
Dean Herbert
672fd3f9d2 When disable mouse buttons during gameplay is selected, disable more globally
Until now the disable setting would only apply to left/right buttons,
and only in gameplay. This change will cause any global actions bound to
mouse buttons to also not work during gameplay.

Closes #11879.
2021-02-23 14:37:46 +09:00
Dean Herbert
6a5c6febc5 Add inline comment explaining the retry loop 2021-02-23 13:23:32 +09:00
Salman Ahmed
5493c55da7 Fix silly mistake 2021-02-22 16:59:35 +03:00
Salman Ahmed
5e9040c291 Use "pausing supported" conditional instead 2021-02-22 16:26:35 +03:00
Dean Herbert
8a97e2e28d Update LocalisedString usages to RomanisedString 2021-02-22 19:01:42 +09:00
Dean Herbert
1fd76ea3fb Apply changes to UI components overriding functions with changing signatures 2021-02-22 19:01:42 +09:00
smoogipoo
d985b8ab2a Increase beatmapset download timeout 2021-02-22 17:14:39 +09:00
Salman Ahmed
6bac83964a Merge branch 'master' into fix-pofl-on-cooldown 2021-02-22 10:03:27 +03:00
smoogipoo
ccb83ef3a3 Fix checkbox not being updated 2021-02-22 15:47:47 +09:00
Dean Herbert
fde026d443 Remove redundant interface specification 2021-02-22 14:54:48 +09:00
Dean Herbert
63dd55c92c Add missing methods from updated audio component interface implementation 2021-02-22 14:18:52 +09:00
Dean Herbert
e2c5dded7f Update framework 2021-02-22 14:14:36 +09:00
smoogipoo
8d463987dd Fix being able to select incompatible freemods 2021-02-22 13:24:24 +09:00
Dan Balasescu
8037b101cb
Merge branch 'master' into perform-from-subscreen-support 2021-02-22 11:55:51 +09:00
Samuel Cattini-Schultz
66643a97b0 Add a list of mods to Skill class
Although this isn't necessary for existing official rulesets and calculators, custom calculators can have use cases for accessing mods in difficulty calculation.
For example, accounting for the effects of visual mods.
2021-02-20 20:37:44 +11:00
Dean Herbert
3b7ebfa2ac Update framework 2021-02-20 17:17:31 +09:00
Dean Herbert
38a2124921 Support instant exit if pausing is not allowed in the current game mode 2021-02-20 14:26:50 +09:00
Dean Herbert
5eee46074c Ensure the current screen is current when a sub screen is found as the target 2021-02-19 19:45:29 +09:00
Dan Balasescu
52372fe50d
Merge pull request #11713 from peppy/fix-error-exit-during-results-transition
Fix a potential crash when exiting play during the results screen transition
2021-02-19 18:39:21 +09:00
Dan Balasescu
9fc57b2145
Merge pull request #11832 from peppy/leaderboard-compact-mode
Show compact leaderboard during gameplay to reduce distractions
2021-02-19 18:17:46 +09:00
Dean Herbert
362e4802f7 Add the ability for PerformFromMenuRunner to inspect nested screen stacks 2021-02-19 17:58:04 +09:00
Salman Ahmed
0771154dd2 Make PauseCooldownActive protected and expose on test class 2021-02-19 11:42:30 +03:00
Salman Ahmed
ddd1dcff88 Attempt pausing every single frame 2021-02-19 11:33:26 +03:00
Dean Herbert
82cc06ca57 Fix new logic not considering fail overlay correctly 2021-02-19 17:26:54 +09:00
Dean Herbert
4c214b74ce Merge branch 'master' into fix-error-exit-during-results-transition 2021-02-19 17:13:55 +09:00
Dean Herbert
b8c1e8ed7a
Merge pull request #11708 from frenzibyte/multiplayer-participant-rank
Display user global rank for multiplayer room participants
2021-02-19 16:57:30 +09:00
Dean Herbert
e4d3c91ff4
Merge pull request #11819 from peppy/update-framework
Update implementation of AdjustableAudioComponents in line with framework changes
2021-02-19 16:57:03 +09:00
Dean Herbert
781379826b
Merge pull request #11793 from peppy/playlists-freemod-support
Add "free mod" user mod selection support to the playlists system
2021-02-19 16:56:21 +09:00
Dean Herbert
9d02f589fe Compact leaderboard during gameplay 2021-02-19 16:51:39 +09:00
Salman Ahmed
4436585aa4 Keep attempting to pause gameplay while window not active 2021-02-19 10:46:32 +03:00
Salman Ahmed
772471a6d8 Add failing test case 2021-02-19 10:46:31 +03:00
Dean Herbert
691cfa5bc3 Add expanded/compact display modes for GameplayLeaderboard 2021-02-19 16:46:30 +09:00
Dean Herbert
ee9e6fff40 Add bindable flow for expanded leaderboard state 2021-02-19 15:09:41 +09:00
Dan Balasescu
a6d163619a
Merge pull request #11827 from peppy/perform-from-screen-subclass-support
Allow beatmap imports from any derived version of SongSelect, rather than only PlaySongSelect
2021-02-19 15:05:18 +09:00
Dean Herbert
484968d797
Fix weird bool check
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2021-02-19 14:46:10 +09:00
Dean Herbert
4504023a23 Merge branch 'master' into playlists-freemod-support 2021-02-19 14:43:59 +09:00
Dean Herbert
39059ed82d Remove unnecessary null coalesce check 2021-02-19 14:36:51 +09:00
Dean Herbert
df05c57f44 Merge branch 'master' into playlists-freemod-support 2021-02-19 14:35:20 +09:00
Dean Herbert
a2aec6bcdc
Merge pull request #11808 from smoogipoo/multiplayer-no-playlist-mangling
Rework multiplayer playlist handling to support multiple items
2021-02-19 14:33:53 +09:00
Dean Herbert
1701d69a60 Fix calls to IsAssignableFrom being back-to-front 2021-02-19 14:33:08 +09:00
Dean Herbert
95d62d03e2
Merge pull request #11826 from frenzibyte/fix-score-type-wrong-order
Fix misordered hit error in score meter types
2021-02-19 14:16:57 +09:00
Dean Herbert
87edf67879 Update framework 2021-02-19 14:07:39 +09:00
smoogipoo
c0e0bd4f42 Add compatibility with old server build 2021-02-19 13:57:04 +09:00
Dean Herbert
85a844a378 Restructure class slightly 2021-02-19 13:40:12 +09:00
smoogipoo
183a481a34 Refactor playlist update to remove .Contains() check 2021-02-19 13:32:32 +09:00