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

45330 Commits

Author SHA1 Message Date
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
Dean Herbert
bf23c67603
Merge pull request #31509 from bdach/local-metadata-cache-corruption
Refetch local metadata cache if corruption is detected
2025-01-23 02:43:14 +09: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
Dean Herbert
6ceb348cf6
Adjust code again to avoid weird throw mishandling 2025-01-22 18:24:01 +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
26ef23c9a9
Remove outdated ef related catch-when usage 2025-01-22 17:04:30 +09:00
Dean Herbert
910c0022e3
Adjust code style slightly 2025-01-22 17:03:01 +09:00
Dean Herbert
9e023340b0
Mark friend notifications as non-important 2025-01-22 16:41:27 +09:00
Dean Herbert
4cf4b8c73d
Switch IsImportant to init property isntead of virtual 2025-01-22 16:41:26 +09:00
Dean Herbert
fde2b22bbc
Add transient flag for notifications which shouldn't linger in history 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
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
Bartłomiej Dach
0265a29000
Move bindings to LoadComplete() 2025-01-21 10:02:16 +01:00
Dean Herbert
704c2ea0cc
Merge pull request #31026 from frenzibyte/ios-system-file-import
Add special handling for file import button on iOS
2025-01-21 17:33:03 +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
66be9f2d1b
Remove right click default for absolute scroll 2025-01-21 17:24:41 +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
3a37817ab2
Don't block Popover escape handling (just let it work in addition to GlobalAction.Back) 2025-01-21 16:39:45 +09:00
Salman Alshamrani
3f51626f07 Simplify code immensely
Co-authored-by: Dean Herbert <pe@ppy.sh>
2025-01-21 02:20:51 -05: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
Salman Alshamrani
f133042936 Fix silly mistake 2025-01-21 01:14:18 -05:00
Dean Herbert
748e631976
Merge branch 'master' into ios-system-file-import 2025-01-21 14:22:56 +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
Dean Herbert
6b524aba60
Enable sentry caching to avoid sentry writing outside of game directory
See https://github.com/ppy/osu/discussions/31412. Probably safe enough.
2025-01-20 23:45:39 +09:00
Rudi Herouard
89586d5ab2 Fix settings in replay hiding when dragging a slider 2025-01-20 13:43:45 +01:00
Dean Herbert
c20b836d9c
Merge pull request #31543 from bdach/daily-challenge-completion-marker
Add completion marker to daily challenge profile counter
2025-01-20 19:29:35 +09:00
Dean Herbert
cf032e5e7f
Merge pull request #31547 from bdach/editor/precise-move
Add precise movement tool to osu! editor
2025-01-20 19:29:22 +09:00
Salman Alshamrani
2b5ea4e6e0 Fix recent editor textbox regressions 2025-01-20 03:17:01 -05:00
Dean Herbert
dcdb8d13a9
Always select text when an editor slider-textbox is focused 2025-01-20 16:17:39 +09:00
Dean Herbert
7fd4adc7ec
Merge pull request #31583 from turbedi/cleanup
Remove redundant ToArray() calls in Osu/ManiaHitObjectComposer
2025-01-20 15:48:46 +09:00
Dean Herbert
04ba686be5
Add basic animation 2025-01-20 15:47:47 +09: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
Dean Herbert
525e16ad1d
Fix one more new inspection in EAP 2025 2025-01-20 15:00:35 +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
Marvin Schürz
3532ce1636 Olibomby insisted on it being like this so i concede 2025-01-20 01:07:13 +01:00
Marvin Schürz
a6ca9ba9fb Display up to 2 decimal places in MetronomeDisplay 2025-01-20 00:51:43 +01:00
CloneWith
72e1b2954c
Don't highlight friends' scores under beatmap's friend score leaderboard 2025-01-20 00:21:10 +08:00
Dean Herbert
e753e3ee2f
Update framework (except android) 2025-01-18 00:40:32 +09:00
Bartłomiej Dach
ebca2e4b4f
Implement precise movement tool
As mentioned in one of the points in
https://github.com/ppy/osu/discussions/31263.
2025-01-17 14:28:57 +01:00
Bartłomiej Dach
b79e937d2d
Fix code quality 2025-01-17 13:34:16 +01:00
Bartłomiej Dach
3c4bfc0a01
Merge spectator list classes into one skinnable 2025-01-17 11:23:14 +01:00
Bartłomiej Dach
a67a68c596
Remove unnecessary masking spec
It was clipping the daily challenge completion checkmark, and it
originates in some veeeeery old code where the profile overlay looked
and behaved very differently (0fa0271878).
2025-01-17 10:40:26 +01:00
Bartłomiej Dach
b215073957
Add completion marker to daily challenge profile counter 2025-01-17 10:26:59 +01:00
Dean Herbert
43b54623d9
Add required padding on either side of panels so selection can remain centered 2025-01-17 18:08:20 +09:00
Dean Herbert
54f9cb7f68
Add overlapping spacing support 2025-01-17 18:07:54 +09:00
Dean Herbert
a1c5fad6d4
Add curvature to new carousel implementation 2025-01-17 18:07:54 +09:00
Dean Herbert
a8456ce9ac
Merge pull request #31513 from smoogipoo/remove-status-from-apiuser
Remove `Status` and `Activity` bindables from `APIUser`
2025-01-17 17:36:47 +09:00
Dean Herbert
c8b38f05d5
Add note about the visibility logic because it tripped me up 2025-01-17 17:14:06 +09:00
Dean Herbert
f59762f0cb
Playing -> PlayingState 2025-01-17 17:11:40 +09:00
Dan Balasescu
88829d5321
Merge pull request #31535 from peppy/beatmap-carousel-v2-right-click-scroll
Refactor absolute scrolling at song select
2025-01-17 17:02:14 +09:00
Dean Herbert
41c603b56f
Fix double-retrieval of user presence from dictionary in online display 2025-01-17 16:41:02 +09:00
Dean Herbert
311f08b962
Update TestMetadataClient to correctly set local user state in line with changes 2025-01-17 16:29:02 +09:00
Dean Herbert
3bb4b0c2b8
Rename fields from State to Presence when presence is involved 2025-01-17 16:25:48 +09:00
Bartłomiej Dach
7d026761fc
Merge pull request #31533 from peppy/fix-gameplay-offset-adjust-limitations
Fix gameplay offset adjustment limits not being enforced
2025-01-17 08:21:24 +01:00
Dan Balasescu
79fff136a9
Merge branch 'master' into beatmap-carousel-v2-right-click-scroll 2025-01-17 16:12:52 +09:00
Dan Balasescu
a51938f4e9
Separate the local user state 2025-01-17 15:59:34 +09:00
Dan Balasescu
5425d62186
Merge branch 'master' into remove-status-from-apiuser 2025-01-17 15:42:40 +09:00
Rudi Herouard
5fc277aa7f Seek in replay scaled by replay speed 2025-01-16 21:53:56 +01:00
Bartłomiej Dach
5c799d733f
Bind to playing state via GameplayState instead to fix more tests 2025-01-16 15:25:56 +01:00
Bartłomiej Dach
1f1e940ada
Restore virtual modifier to fix tests (and mark for posterity) 2025-01-16 15:13:16 +01:00
Bartłomiej Dach
0c54853710
Merge branch 'spectator-list-visuals' into spectator-list-ready 2025-01-16 15:13:04 +01:00
Bartłomiej Dach
81f54507dd
Fix potential index accounting mistake when creating spectator list with spectators already present
Noticed by accident, but if the `BindCollectionChanged()` callback fires
immediately in `LoadComplete()` when set up and there are spectators
present already, then `NewStartingIndex` in the related event is -1:

	b03f83de36/src/libraries/System.ObjectModel/src/System/Collections/Specialized/NotifyCollectionChangedEventArgs.cs (L84-L92)

which kinda breaks the math introducing off-by-ones and in result causes
11 items to be displayed together rather than 10.
2025-01-16 14:29:41 +01:00
Bartłomiej Dach
e3b780d0fb
Merge branch 'master' into spectator-list-visuals 2025-01-16 14:07:53 +01:00
Dean Herbert
a6057a9f54
Move absolute scroll support local to carousel and allow custom bindings 2025-01-16 20:47:59 +09:00
Dean Herbert
1c2621d88e
Add support to CarouselV2 for right mouse button scrolling 2025-01-16 20:27:38 +09:00
Dean Herbert
56b450c4a6
Remove setting for right-mouse scroll (make it always applicable) 2025-01-16 20:27:38 +09:00
Bartłomiej Dach
6b921fc4e4
Merge pull request #31471 from peppy/beatmap-carousel-v2
Add basic framework for carousel displays (aka `BeatmapCarouselV2`)
2025-01-16 12:21:53 +01:00
Dan Balasescu
8400726887
Move bindables to OsuConfigManager & SessionStatics 2025-01-16 19:33:42 +09:00
Dean Herbert
e47244989a
Adjust animations a bit
Removed autosize duration stuff because it looks weird when the list is
shown from scratch where users are already fully populated in it.
2025-01-16 19:23:54 +09:00
Dean Herbert
32906aefde
Add gradient on final spectator if more than list capacity are displayed 2025-01-16 19:05:19 +09:00
Dean Herbert
996798d2df
Avoid list width changing when spectator count changes 2025-01-16 19:02:14 +09:00
Dean Herbert
cde8e7b82e
Fix idle/hover colour handling weirdness in OsuHoverContainer 2025-01-16 18:54:51 +09:00