1
0
mirror of https://github.com/ppy/osu.git synced 2025-02-23 11:53:21 +08:00
Commit Graph

16096 Commits

Author SHA1 Message Date
Dean Herbert
99192404f1
Tidy up WorkingBeatmap passing in ctor 2025-02-03 19:26:14 +09:00
Dean Herbert
8bb7bea04e
Rename freestyle select screen classes for better discoverability 2025-02-03 19:21:21 +09:00
Dean Herbert
37abb1a21b
Tidy up button construction code 2025-02-03 19:09:58 +09:00
Dean Herbert
444e0970d6
Standardise naming to use "Freestyle" not "FreeStyle" 2025-02-03 19:01:59 +09:00
NecoDev
55f46e3b66 Added warning 2025-02-03 16:47:38 +08:00
Dean Herbert
26a8fb6984
Make distance snap settings mutually exclusive 2025-02-03 17:34:55 +09:00
Bartłomiej Dach
ee7d281e73
Merge branch 'master' into fix-limit-distance-snap-to-current 2025-02-03 08:57:27 +01:00
Dean Herbert
b9f840c32e
Merge pull request #31742 from smoogipoo/fix-results-persistent-sounds
Fix results screen sounds persisting after exit
2025-02-03 16:39:47 +09:00
Salman Alshamrani
c587958f38 Apply depth ordering relative to selected item 2025-02-03 02:34:29 -05:00
Dean Herbert
a23de0b188
Avoid accessing WorkingBeatmap.Beatmap every update call
Notice in passing.

Comes with overheads that can be easily avoided. Left a note for a
future (slightly more involved) optimisation.
2025-02-03 16:30:31 +09:00
Dan Balasescu
9033a4d480
Remove unused using 2025-02-03 14:20:56 +09:00
Dan Balasescu
210fa14759
Play sound via results screen instead 2025-02-03 14:15:46 +09:00
Dean Herbert
6a18d18feb
Fix null handling when no items are populated but a selection is made 2025-02-03 02:39:45 +09:00
Dean Herbert
9c34819ff4
Add test coverage for grouped selection 2025-02-03 02:39:45 +09:00
Dean Herbert
645c26ca19
Simplify keyboard traversal logic 2025-02-03 02:24:27 +09:00
Dean Herbert
d74939e6e9
Fix backwards traversal of groupings and allow toggling groups without updating selection 2025-02-03 02:24:27 +09:00
Dean Herbert
764f799dcb
Improve selection flow using early exit and invalidation 2025-02-03 02:24:27 +09:00
Dean Herbert
d5dc55149d
Add initial difficulty grouping support 2025-02-03 02:24:27 +09:00
Dean Herbert
3cde11ab77
Re-enable masking by default 2025-02-03 02:24:26 +09:00
Dean Herbert
f65be009a3
Merge pull request #31747 from bdach/do-not-reset-online-info-on-save
Do not reset online information when saving beatmap
2025-02-02 22:24:56 +09:00
Dean Herbert
cf3a379b1c
Merge pull request #31368 from frenzibyte/mobile-fix-mania
Improve osu!mania playability on mobile devices
2025-02-01 14:49:46 +09:00
Bartłomiej Dach
7ef8616703
Fix broken user-facing messaging when beatmap hash mismatch is detected 2025-01-31 12:22:05 +01:00
Bartłomiej Dach
8718483c70
Avoid moving already placed objects temporally when "limit distance snap to current time" is active 2025-01-31 09:51:13 +01:00
Dan Balasescu
cf2d0e6911
Fix results screen sounds persisting after exit 2025-01-31 16:22:37 +09:00
Marvin Helstein
ec99fc1141 Move ApplySelectionOrder override from EditorBlueprintContainer to ComposeBlueprintContainer 2025-01-30 10:27:36 +02:00
Dan Balasescu
48b1c7398e
Merge pull request #31655 from bdach/deabstractify-editor-snap
Refactor editor object snapping to remove bad abstractions
2025-01-30 01:38:42 +09:00
Dan Balasescu
ca7a36d3d6
Remove unused usings 2025-01-29 23:32:44 +09:00
Dean Herbert
bc930e8fd3
Minimal clean-up to get things bearable
I plan to do a full refactor of `RoomSubScreen` at first opportunity.
2025-01-29 20:02:04 +09:00
Dean Herbert
e8d0d2a1d9
Combine more methods to simplify flow futher 2025-01-29 19:56:37 +09:00
Dean Herbert
a6814d1a8a
Make multiplayer change room settings more obvious as to what it does
"Edit" felt really weird.
2025-01-29 19:48:04 +09:00
Dean Herbert
07bff22200
Fix delay before difficulty panel displays fully 2025-01-29 19:30:57 +09:00
Dean Herbert
c70ff11085
Remove new bindables from RoomSubScreen 2025-01-29 19:06:14 +09:00
Dean Herbert
05200e8970
Add missing partial 2025-01-29 19:05:28 +09:00
Dean Herbert
d3f9804ef1
Combine more methods to simplify flow 2025-01-29 18:45:02 +09:00
Dan Balasescu
fc73037d9f
Add pill displaying current freestyle status 2025-01-27 18:46:45 +09:00
Bartłomiej Dach
be9c96c041
Fix infinite loop when switching audio tracks fails on an existing beatmap
Bit ugly, but appears to work in practice...
2025-01-27 10:27:06 +01:00
Bartłomiej Dach
01ae1a58f1
Catch and display user-friendly errors regarding corrupted audio files
Addresses lack of user feedback as indicated by
https://github.com/ppy/osu/issues/31693.
2025-01-27 10:25:22 +01:00
Salman Alshamrani
dac7d21302 Be explicit on nullability in RequiresPortraitOrientation
Co-authored-by: Dean Herbert <pe@ppy.sh>
2025-01-25 19:12:36 -05:00
Bartłomiej Dach
092c7b4253
Merge branch 'master' into beatmap-carousel-v2-split-panels 2025-01-24 15:16:23 +01:00
Bartłomiej Dach
55ab3c72f6
Remove unused field 2025-01-24 15:15:50 +01:00
Dean Herbert
82c5f37c2c
Remove selection animation on set panel 2025-01-24 22:45:08 +09:00
Bartłomiej Dach
7845c5cfb7
Merge pull request #31645 from peppy/offset-adjust-more-lenience
Make offset adjust more lenient
2025-01-24 14:01:25 +01:00
Dean Herbert
a94681158d
Merge pull request #31623 from Layendan/room-context-menu
Add view in browser context menu functionality to multiplayer/playlist rooms
2025-01-24 20:31:49 +09:00
Dean Herbert
da762384f8
Fix breakage from reordering co-reliant variable sets (and guard against it) 2025-01-24 20:20:18 +09:00
Dean Herbert
175eb82ccf
Split out beatmaps and set panels into two separate classes 2025-01-24 20:10:41 +09:00
Dean Herbert
0164a2e4dc
Move pool item preparation / cleanup duties to Carousel 2025-01-24 20:10:41 +09:00
Bartłomiej Dach
a6987f5c95
Remove dependence of placement blueprints on IPositionSnapProvider 2025-01-24 11:59:07 +01:00
Bartłomiej Dach
15b6e28ebe
Remove dependence of blueprint containers on IPositionSnapProvider 2025-01-24 11:59:05 +01:00
Bartłomiej Dach
2d46da1520
Merge pull request #31634 from peppy/beatmap-carousel-v2-selection
Add selection support to beatmap carousel v2
2025-01-24 11:43:17 +01:00
Dean Herbert
9366bfbf0d
Move activation drawable flow portion to ICarouselPanel 2025-01-24 18:40:48 +09:00
Dean Herbert
92429b2ed9
Adjust comments on ICarouselPanel to imply external use 2025-01-24 18:34:04 +09:00
Dean Herbert
17b1739ae4
Combine countless update methods all called together into a single method 2025-01-24 18:00:05 +09:00
Dean Herbert
1bfb4d4c2b
Merge branch 'master' into multiplayer-free-style 2025-01-24 17:23:35 +09:00
Dean Herbert
721b2dfbba
Fix average button not correctly becoming disabled where it previously would 2025-01-24 17:17:34 +09:00
Dean Herbert
56a611b47e
Merge branch 'master' into mobile-fix-mania 2025-01-24 17:03:00 +09:00
Dean Herbert
28a59f4e29
Move line to correct location 2025-01-24 16:45:14 +09:00
Dean Herbert
05b1002e9d
Adjust layout and code quality slightly 2025-01-24 15:57:13 +09:00
Dean Herbert
8f8a6455b4
Bypass offset disallowed status when handling realm callbacks
Hopefully don't need to overthink this one.
2025-01-24 15:49:47 +09:00
Dean Herbert
ee78e1b223
Add safeties against attempting to apply previous play while offset adjust is not allowed
This should theoretically not be possible, but while we are sharing this
control's implementation between gameplay and non-gameplay usages, let's
ensure nothing weird can occur.
2025-01-24 15:49:47 +09:00
Dean Herbert
fb10996951
Consume GameplayStartTime for more lenient offset adjustments 2025-01-24 15:30:02 +09:00
Dean Herbert
5cc8181bad
Expose GameplayStartTime in IGameplayClock 2025-01-24 15:29:49 +09:00
Layendan
d326f23576 Remove unused method 2025-01-23 15:39:18 -07:00
Layendan
b0a7237fd6 Fix formatting 2025-01-23 15:37:30 -07:00
Layendan
13c64b59af Inherit menu items from parent class 2025-01-23 15:36:20 -07:00
Dean Herbert
f4270ab3b9
Simplify selection handling logic 2025-01-23 23:58:51 +09:00
Dean Herbert
d5369d3508
Add regions to BeatmapCarousel 2025-01-23 23:53:09 +09:00
Dean Herbert
0716b73d2a
ActivateSelection -> TryActivateSelection 2025-01-23 22:44:39 +09:00
Dean Herbert
2feab31426
Adjust inline commentary based on review feedback 2025-01-23 22:41:20 +09:00
Dean Herbert
ffca90779f
Fix sort direction being flipped 2025-01-23 18:51:24 +09:00
Dean Herbert
2f94456a06
Add selection and activation flow 2025-01-23 18:51:24 +09:00
Dean Herbert
ecef5e5d71
Add set-difficulty tracking in BeatmapCarouselFilterGrouping
Rather than tracking inside individual items, let's just maintain a
single dictionary which is refreshed every time we regenerate filters.
2025-01-23 18:48:44 +09:00
Dean Herbert
980f6cf18e
Make CarouselItem sealed and remove BeatmapCarouselItem concept
Less abstraction is better. As far as I can tell, we don't need a custom
model for this. If there's any tracking to be done, it should be done
within `BeatmapCarousel`'s implementation (or a filter).
2025-01-23 18:48:44 +09:00
Dean Herbert
c67c0a7fc0
Move Selected status to drawables
Basically, I don't want bindables in `CarouselItem`. It means there
needs to be a bind-unbind process on pooling. By moving these to the
drawable and just updating every frame, we can simplify things a lot.
2025-01-23 18:48:43 +09:00
Dean Herbert
ded1d9f019
displayedCarouselItems -> carouselItems 2025-01-23 15:58:35 +09:00
Dean Herbert
d526835627
Only show loading when doing a user triggered filter 2025-01-23 15:51:54 +09:00
Dean Herbert
6ac2dbc818
Reorder carousel methods into logical regions 2025-01-23 15:50:57 +09:00
Layendan
f673d16a1f Fix formatting 2025-01-22 11:42:11 -07:00
Dan Balasescu
11e84f325c
Merge pull request #31616 from bdach/fix-new-combo-button-crash
Fix crash from new combo colour selector when there are no combo colours present
2025-01-22 20:48:02 +09:00
Bartłomiej Dach
3da220b8f6
Fix crash from new combo colour selector when there are no combo colours present
Closes https://github.com/ppy/osu/issues/31615.
2025-01-22 11:39:32 +01:00
Dean Herbert
218720bca5
Merge pull request #31588 from minetoblend/feature/paste-snapped
Snap to beat divisor when pasting hitobjects in editor
2025-01-22 18:38:12 +09:00
Dan Balasescu
63e6b0e050
Merge pull request #31603 from peppy/input-amendments
Tidy up various input handling anomalies
2025-01-22 18:05:06 +09:00
Bartłomiej Dach
2623d8dcac
Merge pull request #31604 from peppy/fix-song-select-right-click-handling
Fix song select right click handling
2025-01-22 10:00:03 +01:00
Dean Herbert
4cf4b8c73d
Switch IsImportant to init property isntead of virtual 2025-01-22 16:41:26 +09:00
Layendan
2a5a2738e1 Add context menu to open in browser to rooms 2025-01-21 12:45:23 -07:00
Dean Herbert
459847cb80
Perform client side validation that the selected beatmap and ruleset have valid online IDs
This is local to playlists, since in multiplayer the validation is
already provided by `osu-server-spectator`.
2025-01-21 19:51:55 +09:00
Dan Balasescu
8f8246278a
Merge pull request #31527 from bdach/spectator-list-ready
Show spectating users during gameplay
2025-01-21 18:54:11 +09:00
Dean Herbert
f88102610d
Add tooltips explaining multiplayer mod selection buttons 2025-01-21 18:35:59 +09:00
Bartłomiej Dach
0265a29000
Move bindings to LoadComplete() 2025-01-21 10:02:16 +01:00
Dean Herbert
c68a0bc7e3
Merge branch 'master' into multiplayer-free-style 2025-01-21 17:49:21 +09:00
Dean Herbert
6c27e87714
Add back explicit right click handling of carousel absolute scrolling 2025-01-21 17:24:42 +09:00
Dean Herbert
b6e7b43b11
Remove unnecessary input blocking
This was already done by `OverlayContainer`.
2025-01-21 16:40:36 +09:00
Dean Herbert
aeca91cde2
Fix main menu osu logo being activated by function keys and escape 2025-01-21 16:40:21 +09:00
Dean Herbert
9a12f48dcc
Fix ComposeBlueprintContainer handling nudge keys when it can't nudge 2025-01-21 16:40:16 +09:00
Dean Herbert
0a97fb6359
Merge pull request #31586 from minetoblend/feature/metronome-decimals
Display up to 2 decimal places for bpm in timing screen metronome
2025-01-21 16:13:10 +09:00
Dean Herbert
a7c9f84a93
Adjust visuals slightly 2025-01-21 15:14:39 +09:00
Dean Herbert
46ff9d1aad
Fix beat snap grid being lines not being corectly centered to time
This was pointed out as an issue in the osu!taiko editor, but actually
affects all rulesets. Has now been fixed everywhere.

---

Closes https://github.com/ppy/osu/issues/31548.

osu!mania could arguable be consdiered "more correct" with the old
display, but I don't think it's a huge deal either way (subjective at
best).
2025-01-21 14:20:56 +09:00
Rudi Herouard
89586d5ab2 Fix settings in replay hiding when dragging a slider 2025-01-20 13:43:45 +01:00
Dean Herbert
c4509bbe12
Merge pull request #31539 from Rudicito/seek-in-replay-scaled-by-replay-speed
Seek in replay scaled by replay speed
2025-01-20 15:15:50 +09:00
Marvin Schürz
e386c9e373 Apply snapping when pasting hitobjects 2025-01-20 01:25:22 +01:00
Marvin Schürz
8f33b4cc61 Add comment 2025-01-20 01:14:21 +01:00