1
0
mirror of https://github.com/ppy/osu.git synced 2025-03-11 03:37:20 +08:00

71856 Commits

Author SHA1 Message Date
Dean Herbert
4d1167fdcc
Don't attempt to submit zero scores 2025-02-07 15:36:59 +09:00
Dean Herbert
aa329f397e
Remove stray [Solo]s 2025-02-07 15:30:31 +09:00
Dean Herbert
d505c529cd
Adjust tests in line with new expectations 2025-02-07 15:27:28 +09:00
Dean Herbert
d73f275143
Don't inflate set / group panels for simplicity 2025-02-07 15:15:59 +09:00
Dean Herbert
1cf375e329
Merge branch 'master' into carousel-v2-spacing 2025-02-07 14:34:59 +09:00
Dean Herbert
975c35f5ac
Also add difficulty icon to contracted panel 2025-02-07 14:27:37 +09:00
Dean Herbert
25846b2327
Adjust results screen designs and tests slightly 2025-02-07 14:21:43 +09:00
Layendan
2aa930a36c Corrected notification strings 2025-02-06 17:46:49 -07:00
Layendan
6769a74c92 Add loading in case cache lookup takes longer than expected 2025-02-06 17:23:06 -07:00
Layendan
b7483b9442 Add playlist collection button w/ tests 2025-02-06 07:25:45 -07:00
Bartłomiej Dach
91bc23e39e
Merge pull request #31801 from peppy/carousel-v2-artist-grouping
Add support for grouping by artist to beatmap carousel v2
2025-02-06 13:13:35 +01:00
Dan Balasescu
736fe78a02
Merge pull request #31817 from peppy/carousel-v2-invalidation
Add invalidation on draw size change in beatmap carousel v2
2025-02-06 19:54:49 +09:00
Dean Herbert
cb42ef95c5
Add invalidation on draw size change in beatmap carousel v2
Matching old implementation.
2025-02-06 17:48:42 +09:00
Dean Herbert
33035f0206
Merge branch 'master' into carousel-v2-spacing 2025-02-06 17:30:49 +09:00
Dean Herbert
f4bb3bc422
Merge pull request #31802 from frenzibyte/carousel-v2-depth-ordering
Allow ordering certain carousel panels behind others
2025-02-06 17:29:56 +09:00
Dean Herbert
bff686f012
Avoid double iteration when updating group states 2025-02-06 17:22:50 +09:00
Salman Alshamrani
05a9160884 Simplify LINQ expressions to appease CI
don't ask me
2025-02-06 03:10:21 -05:00
Dean Herbert
024fbde0fd
Refactor selection and activation handling
I had a bit of a struggle getting header traversal logic to work well.
The constraints I had in place were a bit weird:

- Group panels should toggle or potentially fall into the prev/next
  group
- Set panels should just traverse around them

The current method of using `CheckValidForGroupSelection` return type
for traversal did not mesh with the above two cases. Just trust me on
this one since it's quite hard to explain in words.

After some re-thinking, I've gone with a simpler approach with one
important change to UX: Now when group traversing with a beatmap set
header currently keyboard focused, the first operation will be to reset
keyboard selection to the selected beatmap, rather than traverse.

I find this non-offensive – at most it means a user will need to press
their group traversal key one extra time.

I've also changed group headers to always toggle expansion when doing
group traversal with them selected.

To make all this work, the meaning of `Activation` has changed somewhat.
It is now the primary path for carousel implementations to change
selection of an item. It is what the `Drawable` panels call when they
are clicked.

Selection changes are not performed implicitly by `Carousel` – an
implementation should decide when it actually wants to change the
selection, usually in `HandleItemActivated`.

Having less things mutating `CurrentSelection` is better in my eyes, as
we see this variable as only being mutated internally when utmost
required (ie the user has requested the change). With this change,
`CurrentSelection` can no longer become of a non-`T` type (in the
beatmap carousel implementation at least).

This might pave a path forward for making `CurrentSelection` typed, but
that comes with a few other concerns so I'll look at that as a
follow-up.
2025-02-06 17:02:44 +09:00
Dean Herbert
4026ca84f8
Move selected retrieval functions to base class 2025-02-06 16:48:17 +09:00
Dean Herbert
a25e1f4f9b
Add test coverage of artist grouping 2025-02-06 16:48:17 +09:00
Salman Alshamrani
aa9727c020 Fix helper method in carousel test scene 2025-02-06 02:44:52 -05:00
Salman Alshamrani
78cd093a47 Fix broken input handling with structural changes 2025-02-06 02:44:40 -05:00
Bartłomiej Dach
e1a146d487
Remove unnecessary suppressions 2025-02-06 08:38:28 +01:00
Bartłomiej Dach
070d402ac2
Merge branch 'bss/api-setup' into bss/the-actual-submission 2025-02-06 08:38:08 +01:00
Bartłomiej Dach
5e74d82fc1
Suppress inspections for now 2025-02-06 08:32:08 +01:00
Bartłomiej Dach
5bcd79956b
Merge branch 'master' into bss/api-setup 2025-02-06 08:30:01 +01:00
Salman Alshamrani
e1d6ce5ff4 Add V2 suffix for easier test browsing 2025-02-06 02:25:14 -05:00
Salman Alshamrani
3ab208bb46 Fix group visual test scene 2025-02-06 02:21:44 -05:00
Salman Alshamrani
134e62c39a Abstractify beatmap panel piece and update all panel implementations 2025-02-06 02:21:34 -05:00
Dan Balasescu
5b8b9589d8
Add ruleset icon to expanded score panel 2025-02-06 15:25:38 +09:00
Dean Herbert
bf377e081a
Reorganise tests to make more logical when manually testing 2025-02-06 15:09:41 +09:00
Dean Herbert
342a66b9e2
Fix keyboard traversal on a collapsed group not working as intended 2025-02-06 14:49:58 +09:00
Dean Herbert
88ad87a78e
Expose set grouping state 2025-02-06 14:30:15 +09:00
Dan Balasescu
885ae7c735
Adjust styling 2025-02-06 14:25:08 +09:00
Dan Balasescu
d93f7509b6
Fix participant panels not displaying mods from other rulesets correctly 2025-02-06 14:24:09 +09:00
Dean Herbert
0257b8c2ff
Move metadata randomisation local to usage 2025-02-06 14:07:50 +09:00
Dean Herbert
d9b370e3a1
Add xmldoc for menu implying external consumption 2025-02-06 13:48:38 +09:00
Dean Herbert
dd53ae0e02
Merge pull request #31806 from bdach/bookmark-follow-ups
Improve bookmark controls
2025-02-06 13:48:12 +09:00
Dean Herbert
4fda4d625f
Merge pull request #31803 from bdach/bss/submission-progress-display
Implement visual component for displaying submission progress
2025-02-06 13:37:08 +09:00
Dean Herbert
9cc90a51df
Adjust xmldoc and avoid LINQ overheads 2025-02-06 13:32:11 +09:00
Dan Balasescu
84206e9ad8
Initial support for freemod+freestyle 2025-02-06 13:29:16 +09:00
Salman Alshamrani
ecc3aeadf2 Make BeatmapPanel appear hovered on keyboard selection even if selected
Was an intentional choice but appeared weird to others instead. The feedback itself probably needs changing.
2025-02-05 22:40:30 -05:00
Salman Alshamrani
aab4a79ce4 Push all beatmap panels to hide their tails 2025-02-05 22:37:03 -05:00
Salman Alshamrani
5e894a6f7e Fix carousel tests failing due to X offsets 2025-02-05 22:25:39 -05:00
Salman Alshamrani
72a62b70c4 Simplify some code 2025-02-05 22:25:39 -05:00
Salman Alshamrani
467ea91105 Fix basic code quality issues 2025-02-05 21:47:15 -05:00
Salman Alshamrani
04a3ee863c Fix design tests 2025-02-05 21:45:34 -05:00
Salman Alshamrani
f9962f95f0 Implement group panel design 2025-02-05 21:45:34 -05:00
Salman Alshamrani
29882a2542 Allow importing real beatmaps in song select test scene 2025-02-05 21:45:34 -05:00
Bartłomiej Dach
10711e5e27
Add missing partial 2025-02-05 15:39:36 +01:00