Salman Ahmed
6bfae25cda
Apply 5px vertical spacing on fill flow
...
Regressed, was margin { bottom = 5f } from the star rating display
creation method, which I've partly inlined.
2021-08-19 08:30:29 +03:00
Salman Ahmed
25e6317e7f
Use animated star display in beatmap info wedge and synchronise bar
2021-08-19 07:18:02 +03:00
Salman Ahmed
102320f8ae
Merge branch 'master' into mod-settings-difficulty-cache
2021-08-19 06:35:13 +03:00
Dean Herbert
9d2664cbb1
Merge branch 'master' into star-rating-display-v2
2021-08-18 17:22:33 +09:00
Salman Ahmed
b419ea716b
Refactor beatmap info wedge to not fully refresh on star difficulty change
...
Makes it look awkward when changing difficulty via mod settings for
example.
Now the changes should instead only affect the displayed components which consume it
directly.
2021-08-17 05:46:06 +03:00
Lucas A
a0a9777109
Fix merge conflicts.
2021-08-16 14:50:00 +02:00
Lucas A
1f942d15f8
Localise scoreboard
2021-08-16 13:38:57 +02:00
Lucas A
7bebbf9f74
Mark format strings as verbatim.
2021-08-16 12:46:41 +02:00
smoogipoo
0e66a05963
Hide left border of beatmap wedge
2021-08-13 22:29:22 +09:00
Dean Herbert
5a60b39643
Remove unnecessary delimiters from song select filter splitting
2021-08-13 16:42:58 +09:00
smoogipoo
b75c20fee4
Adjust positioning and paddings
2021-08-12 18:02:00 +09:00
Lucas A
5e0f9d0af9
Localise user ratings.
2021-08-08 22:00:12 +02:00
Salman Ahmed
d4399f10f9
Merge both variants of the star rating display
2021-08-04 18:19:28 +03:00
Salman Ahmed
d0ce0cf9f5
Merge branch 'master' into new-difficulty-colours
2021-08-04 17:12:15 +03:00
Dean Herbert
9b9dacf3fe
Update usages of Drawable.Click()
2021-08-04 17:30:33 +09:00
Salman Ahmed
9a5e052dc0
Use star difficulty colour spectrum game-wide
2021-08-03 15:02:18 +03:00
Dean Herbert
48b95ae250
Merge pull request #14067 from nekodex/select-sfx-changes
...
Swap 'select' sample variants and add hover+select sounds to more components
2021-07-31 20:03:08 +09:00
Dean Herbert
081dafc4e4
Update existing inline usages to use new extension method
2021-07-31 16:46:02 +09:00
Jamie Taylor
c1d8a7e2ad
Add and use 'Submit' select sample variant for particular components
2021-07-30 21:35:28 +09:00
Dean Herbert
362816492f
Move to more friendly namespace
2021-07-02 18:09:16 +09:00
Dean Herbert
eacf867073
Move shared types into their own classes
2021-07-02 18:05:00 +09:00
Dean Herbert
0522500a57
Fix a couple of merge oversights
2021-07-01 19:45:17 +09:00
Dean Herbert
31dbc7798b
Merge branch 'master' into linkify-metadata
2021-07-01 19:41:33 +09:00
Dean Herbert
f939e2603a
Merge branch 'master' into localisable-tooltips
2021-06-28 15:29:42 +09:00
Gagah Pangeran Rosfatiputra
2b1d3c8e9c
add od filter in search filter
2021-06-26 21:05:01 +07:00
Gagah Pangeran Rosfatiputra
8e1bcc4d6b
add overall difficulty in filter criteria
2021-06-26 21:02:31 +07:00
Bartłomiej Dach
50c27d2635
Update usages of IHasTooltip
in line with framework localisation changes
2021-06-25 19:10:04 +02:00
Jamie Taylor
6e4fc26e16
replace 'songselect' hover/click sounds with 'button' ones for now
2021-06-18 21:03:46 +09:00
Dean Herbert
83402a70db
Fix potential null ref when no beatmap is selected
2021-06-14 15:06:24 +09:00
Dean Herbert
f8b09b7c81
Avoid refresh if score is not related to current display
2021-06-14 14:28:14 +09:00
Dean Herbert
fc442713bb
Debounce schedule at base class
2021-06-14 14:26:40 +09:00
Dean Herbert
8dd48d48f6
Add support for song select leaderboard to handle newly imported scores
2021-06-14 14:20:23 +09:00
ilsubyeega-desu
f65f074131
Add star keyword to FilterQueryParser criteria
2021-06-11 02:46:29 +09:00
Dean Herbert
7774344f0e
Remove "Unranked" text from ModDisplay
2021-06-09 13:45:09 +09:00
Dan Balasescu
44b1102241
Merge branch 'master' into autoplay-pause-support
2021-06-03 13:26:00 +09:00
Dean Herbert
d6656047e3
Fix beatmap statistics with value of zero not displaying correctly at song select
...
Closes #13307 .
2021-06-03 01:58:51 +09:00
Dean Herbert
cbf3ef5400
Create replay via the ICreateReplay
interface instead of explicitly ModAutoplay
2021-06-01 14:22:16 +09:00
Dean Herbert
14570b6fb1
Merge branch 'master' into autoplay-pause-support
2021-06-01 14:19:21 +09:00
Dean Herbert
06bd696cc2
Remove previous
consumption logic in GetWorkingBeatmap
...
This should not be required since the introduction of `workingCache`,
which does the same thing in a more global way.
2021-05-31 14:11:58 +09:00
Dean Herbert
046087a367
Fix access to AliveChildren
before IsLoaded
2021-05-27 16:58:01 +09:00
Dean Herbert
b3b39c4c13
Fix BeatmapCarousel
accessing ScreenSpaceDrawQuad
of non-loaded children
...
Fixes failure seen at
https://ci.appveyor.com/project/peppy/osu/builds/39302762/tests .
2021-05-26 15:42:27 +09:00
Dean Herbert
7c89dbcd35
Externalise autoplay generation
2021-05-25 18:37:04 +09:00
Dean Herbert
2958b9adf4
Merge branch 'master' into import-from-stable-select-location
2021-05-21 17:37:34 +09:00
Dean Herbert
df5970fab4
Create base implementations of the two most common TernaryStateMenuItem
s
2021-05-20 19:34:53 +09:00
Lucas A
775e0fbde5
Mark StableImportManager as nullable.
2021-05-18 15:27:20 +02:00
Lucas A
79740dd2d8
Merge conditionnal expression.
2021-05-17 22:01:05 +02:00
Lucas A
fe11426238
Disable appearance of the stable import prompt waiting for user interaction in tests, which caused them to fail.
2021-05-17 12:55:59 +02:00
Lucas A
f60dbbfbbd
Reword import dialogs.
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2021-05-17 12:55:58 +02:00
Lucas A
a7b740fd1d
Reword ImportFromStablePopup and display the popup regardless of whether a stable install is detected.
2021-05-17 12:55:58 +02:00
Lucas A
851e33fd15
Hook up StableImportManager.
2021-05-17 12:55:57 +02:00
Joseph Madamba
a71e52da4c
Fix enum ordering after adding source
2021-05-09 15:39:59 -07:00
Joseph Madamba
a21718f1cd
Move source case to a better spot
2021-05-09 14:26:45 -07:00
Joseph Madamba
8964d51de9
Add ability to sort by source in song select
2021-05-09 14:10:38 -07:00
Dean Herbert
165f443ab5
Merge branch 'master' into add-missing-author-links
2021-05-07 14:32:44 +09:00
Dean Herbert
cffeb8641f
Make setters private for protected containers
2021-05-06 02:14:57 +09:00
Dean Herbert
fe9ade6754
Rename Container to DisplayedContent
2021-05-06 02:14:04 +09:00
Denrage
b6b9a69601
Removed unnecessary class for wrapping
2021-05-05 18:50:49 +02:00
Denrage
bb385f4255
Reverted difficulty and mod updates
2021-05-05 18:15:59 +02:00
Denrage
2797507758
Reorganized elements for readability
2021-05-05 17:56:07 +02:00
Denrage
88506a51dd
reduced complexity
2021-05-05 17:51:29 +02:00
Denrage
5049e2fbf9
Refactored out changes in DifficultyColourBar
2021-05-05 15:28:33 +02:00
Dean Herbert
4ef901d08d
Remove unnecessary redirection property to Container.Info
2021-05-05 21:07:49 +09:00
Denrage
cf6ed7a7cf
Refactored out changes in StarRatingDisplay
2021-05-05 13:13:37 +02:00
Dean Herbert
377af38d94
Remove unnecessary pixelSnapping parameter
...
This was only required because there was text being rendered to the
`BufferedContainer` content until now. Removing this should allow for
better resolution in the background display (due to using a better
minify scale mode).
2021-05-05 17:59:51 +09:00
Denrage
713344ebad
Reorganize methods
2021-04-23 10:31:49 +02:00
Denrage
0dfd0bb59d
Refactored background of BeatmapInfoWedge
2021-04-21 15:46:11 +02:00
Denrage
d6928e91fd
Removed BeatmapInfo in StarRatingDisplay
2021-04-21 15:43:48 +02:00
Denrage
9fba87f67a
Moved Info and Background into own container
2021-04-21 15:43:29 +02:00
Denrage
e9571b72cf
Fixed InspectCode
2021-04-20 14:53:35 +02:00
Denrage
583754b22a
Removed unnecessary whitespaces
2021-04-20 14:29:53 +02:00
Denrage
df29e61147
Fix CodeFactor error
2021-04-20 14:22:49 +02:00
Denrage
f799a6e733
Removed StarDifficulty binding passthrough
2021-04-20 14:18:41 +02:00
Denrage
c5d35ab787
removed mods binding passthrough
2021-04-20 12:40:22 +02:00
Denrage
4e6cd8082e
WIP refresh BPM-Label on mod change
2021-04-20 12:00:04 +02:00
Denrage
6e72ee5f76
Added bindable stardifficulty to StarRatingDisplay
2021-04-20 10:37:53 +02:00
Denrage
505a117862
splitted updateable part of wedge
2021-04-20 10:37:52 +02:00
Denrage
6bf6084ae9
fixed according to suggestions
2021-04-19 19:24:46 +02:00
Denrage
9f24cdb355
Added Author Link in BeatmapInfoWedge
2021-04-19 16:54:09 +02:00
Dean Herbert
dfe3240b45
Merge pull request #12353 from nekodex/songselect-hoversamples
...
Add a hover sample type for SongSelect buttons
2021-04-10 01:45:47 +09:00
Jamie Taylor
ffacd38e57
Reduce the randomised pitch range of hover sounds
2021-04-09 23:03:14 +09:00
Jamie Taylor
8a0da06e89
Add a hover sample type for SongSelect buttons
2021-04-09 23:00:40 +09:00
Dean Herbert
0f2c03d54b
Add back "rewind" text, showing temporarily after a rewind occurs
2021-04-07 18:29:45 +09:00
Dean Herbert
afc745f999
Merge branch 'master' into rebind-song-select
2021-04-07 17:13:25 +09:00
Dean Herbert
3113eefcf6
Don't attempt to load content when not online
2021-04-06 17:12:00 +09:00
Dean Herbert
899d708dac
Move loading layer up one level to correct padding
2021-04-06 17:09:51 +09:00
Dean Herbert
1934e8e1fe
Fix loading layer being in the wrong place
2021-04-06 16:30:47 +09:00
Dean Herbert
59e6c46644
Remove unnecessary online state logic
2021-04-06 16:23:27 +09:00
Dean Herbert
dafa8bbe4e
Refactor BeatmapDetails to use GridContainer to keep a consistent layout
2021-04-06 16:21:20 +09:00
PercyDan54
a5a19319cc
Fix code style
2021-04-02 21:15:28 +08:00
PercyDan54
1ff77754fd
Use OnlineViewContainer
2021-04-02 20:14:31 +08:00
Dean Herbert
6cb14e91c9
Make Player abstract and introduce SoloPlayer
2021-03-23 18:18:49 +09:00
Bartłomiej Dach
12b7d9e06d
Simplify custom filter criteria retrieval
2021-03-06 12:16:01 +01:00
Bartłomiej Dach
f733d1ec1f
Expose and document query parser and helpers
2021-03-03 22:03:01 +01:00
Bartłomiej Dach
f9148eec20
Refactor filter query parsing helper methods
...
In preparation for exposition as public.
2021-03-03 21:34:14 +01: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
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
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
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
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
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
Dean Herbert
e82eaffaed
Flip order back to original for romanisable strings
2021-02-25 14:14:07 +09:00
Dean Herbert
a362382d38
Add back more correct null checks
2021-02-25 14:06:21 +09: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
Dan Balasescu
6240d3964c
Merge pull request #11817 from peppy/fix-collection-dropdown-cross-thread-manipulation
...
Fix potential crash from cross-thread drawable manipulation in CollectionFilterDropdown
2021-02-19 10:06:42 +09:00
Dan Balasescu
46b67dd7bc
Merge pull request #11821 from peppy/fix-carousel-border-additive-alplha
...
Fix carousel items' borders getting blown out when selected and hovered
2021-02-18 17:45:58 +09:00
Dean Herbert
b713eb2eae
Make field readonly
2021-02-18 17:13:48 +09:00
Dean Herbert
c3a98b6ad1
Fix carousel items' borders getting blown out when selected and hovered
...
I tried restructuring the hierarchy to avoid needing this added property
(moving the hover layer out of the border container) but this leads to
some subpixel leakage outside the borders which looks even worse.
Closes #6915 .
2021-02-18 16:59:44 +09:00
Dean Herbert
421cdb6650
Consume new method in existing usages (and remove some unnecessary set/unset code)
2021-02-18 15:01:11 +09:00
Dean Herbert
90dce52042
Fix potential crash from cross-thread drawable manipulation in CollectionFilterDropdown
2021-02-18 14:10:28 +09:00
smoogipoo
d3f0c0730d
Merge branch 'master' into non-concurrent-sample-playback
2021-02-12 17:22:15 +09:00
Dean Herbert
cd01591dda
Consume new debounce logic in carousel header
2021-02-12 12:22:35 +09:00
Dean Herbert
98c5b0220c
Merge pull request #11725 from smoogipoo/freemods-user-settings
...
Add local user customisation for freemod mod settings
2021-02-11 16:02:24 +09:00
Dean Herbert
eaa7b4cb93
Rename second usage variable name to match
2021-02-11 14:54:50 +09:00
smoogipoo
6fff7c39da
Ensure tracker is disposed
2021-02-10 20:09:45 +09:00
smoogipoo
393cd6c74a
Add helper class for tracking changes to mod settings
2021-02-10 19:40:07 +09:00
Jamie Taylor
bc7f4a4f88
Use a single sample for CarouselHeader on-hover with randomised pitch instead of multiple samples
2021-02-10 17:53:47 +09:00
smoogipoo
69ca440ae5
Merge branch 'master' into more-accurate-most-common-bpm
2021-02-08 18:40:58 +09:00
Dean Herbert
3e750feaa4
Subclass LocalPlayerModSelectOverlay to correctly deselect incompatible mods on free mod selection
2021-02-05 16:42:35 +09:00
smoogipoo
97e3023df9
Renamespace/rename MatchSongSelect -> PlaylistsSongSelect
2021-02-01 20:16:58 +09:00
smoogipoo
9c4c47599f
Merge branch 'master' into freemods
2021-02-01 19:28:10 +09:00
smoogipoo
89a42d60fb
General cleanup
2021-02-01 18:50:32 +09:00
smoogipoo
426569c2a9
Move common song select implementation for online play
2021-02-01 14:57:39 +09:00
smoogipoo
230b347c1e
Move ModSelectOverlay.IsValidMod to a property
2021-02-01 12:18:11 +09:00
smoogipoo
45e41aaeac
Initial implementation of freemod selection overlay
2021-01-27 22:15:53 +09:00
smoogipoo
4019cc38e5
Allow footer buttons to be customised
2021-01-27 22:03:51 +09:00
smoogipoo
91d34d86f7
Abstractify ModSelectOverlay
2021-01-27 22:02:23 +09:00
Dean Herbert
a6516e3be5
Merge branch 'master' into scroll-to-20
2021-01-21 14:28:17 +09:00
Dean Herbert
7c4a072568
Merge branch 'master' into scroll-to-20
2021-01-21 13:48:26 +09:00
smoogipoo
eb85efcea2
Add check to playlists too
2021-01-20 20:59:28 +09:00
smoogipoo
de9d075f94
Initial sample + samplechannel rework
2021-01-19 17:11:40 +09:00
Dean Herbert
0b165dce4b
Fix multiplayer mod select showing autoplay as a choice
2021-01-18 17:50:32 +09:00
smoogipoo
24e991a5ef
Actually return beat length and not BPM
2021-01-15 14:35:09 +09:00
smoogipoo
c6e9a6cd5a
Make most common BPM more accurate
2021-01-15 14:28:49 +09:00
Dean Herbert
0a65ae8f1e
Fix the beatmap carousel playing the difficulty change sample on beatmap change
2021-01-15 14:07:24 +09:00
Dean Herbert
4973e23003
Merge branch 'master' into fix-transform-mutation-mod-selection
2021-01-08 11:16:15 +09:00
Bartłomiej Dach
4998aaaa98
Remove outdated warning disable
...
Does not trigger any more on Rider 2020.3.2.
2021-01-06 18:38:25 +01:00
Bartłomiej Dach
7651d4554a
Merge branch 'master' into fix-transform-carousel
2021-01-06 13:49:05 +01:00
Bartłomiej Dach
43b9fde457
Add some nullability annotations for good measure
2021-01-06 13:15:15 +01:00
Dean Herbert
99701a6d9b
Add null check on beatmapContainer for safety
2021-01-06 21:06:33 +09:00
Dean Herbert
ffafdf2209
Merge branch 'master' into fix-transform-carousel
2021-01-06 21:03:22 +09:00
Bartłomiej Dach
25b4628672
Merge branch 'master' into fix-transform-mutation-from-background
2021-01-06 11:04:51 +01:00
Bartłomiej Dach
52687fc37c
Merge branch 'master' into fix-transform-mutation-loading-layer
2021-01-05 23:10:51 +01:00
Dean Herbert
4b539b01c1
Match code between updateSelectedBeatmap/Ruleset
2021-01-05 20:38:58 +09:00
Dean Herbert
83dbba3cbf
Fix carousel beatmap set panels applying transforms to difficulties while they are loading
2021-01-05 18:41:45 +09:00
Dean Herbert
54982dcdd7
Refactor LoadingLayer to avoid applying effects to external drawables
...
In theory this seemed like a good idea (and an optimisation in some
cases, due to lower fill rate), but in practice this leads to weird edge
cases.
This aims to do away with the operations on external drawables by
applying a dim to the area behind the `LoadingLayer` when required.
I went over each usage and ensured they look as good or better than
previously.
The specific bad usage here was the restoration of the colour on dispose
(if the `LoadingLayer` was disposed in a still-visible state).
I'm aware that the `BeatmapListingOverlay` will now dim completely during
load. I think this is fine for the time being.
2021-01-05 17:31:45 +09:00
Dean Herbert
9bac791a57
Fix deselection of autoplay mod failing
2021-01-05 16:17:58 +09:00
Dean Herbert
b3f08b29ca
Ensure that all changes to screen backgrounds are on the correct thread
2021-01-05 15:22:50 +09:00
Dean Herbert
a3e4e2f6c3
Switch ResultsScreen and SongSelect inheritance and remove local implementation
2021-01-05 15:22:50 +09:00
Dean Herbert
53e6a349bb
Fix incorrect initial conditional
...
Turns out this wasn't actually required.
2021-01-03 22:44:32 +09:00
Dean Herbert
efb71713ef
Fix null condition inhibiting deselection events
2021-01-03 22:43:02 +09:00
Dean Herbert
a6d4992997
Ensure SelectionChanged events are only sent once when selection is null
2021-01-03 12:53:25 +09:00
Dean Herbert
caa5109e3a
Add precautionary null checks to update methods in SongSelect
2021-01-03 12:18:35 +09:00
Dean Herbert
e2de5bb8f9
Fix the beatmap carousel not returning to centre correctly after resizing window
2021-01-02 22:05:41 +09:00
Bartłomiej Dach
4c43a67b68
Rename I{Multiplayer -> OnlinePlay}SubScreen
2020-12-25 18:07:34 +01:00
Bartłomiej Dach
83fb7c7a1a
Re-namespace all files in OnlinePlay directory
2020-12-25 16:50:09 +01:00
Dean Herbert
5d4b73baa5
RealtimeMultiplayer -> Multiplayer
2020-12-25 14:10:59 +09:00
Endrik Tombak
78c14fd696
Refactor code into UserTrackingScrollContainer
2020-12-22 17:36:44 +02:00
Dean Herbert
df5e1d83bd
Allow recommender to potentially be null
2020-12-22 14:36:52 +09:00
Dean Herbert
8cc2ed3fae
Move from OsuGameBase to OsuGame
...
Also moves to a more suitable namespace.
2020-12-22 14:28:27 +09:00
Dean Herbert
626b7615ad
Move and rename some fields for better readability
2020-12-22 14:23:33 +09:00
Dean Herbert
dff865f335
Tidy up comments, code, and multiple linq enumeration
2020-12-22 14:12:02 +09:00
Dean Herbert
d229fbba6e
Merge branch 'master' into present-recommended
2020-12-22 13:52:29 +09:00
Endrik Tombak
c25e2c3dd5
Select recommended beatmap if last selection is filtered
2020-12-03 23:13:14 +02:00
Endrik Tombak
49be4978bd
Avoid calling ToList twice
2020-12-03 19:53:41 +02:00
Endrik Tombak
4cd2e207ac
Document getBestRulesetOrder
2020-12-03 19:53:06 +02:00
Endrik Tombak
48dad61a46
Apply review suggestions
2020-12-03 19:44:12 +02:00
Endrik Tombak
cbbcf36eaa
Merge branch 'master' of https://github.com/ppy/osu into present-recommended
2020-12-03 19:38:32 +02:00
Dan Balasescu
1d92800761
Merge pull request #11068 from peppy/fix-carousel-edge-masking
...
Fix beatmap carousel panels getting masked away when out of scroll bounds
2020-12-03 20:40:44 +09:00
smoogipoo
31f7f7072d
Fix song select panels not loading if partially offscreen
2020-12-03 15:13:20 +09:00
Dean Herbert
897f593b37
Fix beatmap carousel panels getting masked away when out of scroll bounds
...
Regressed in https://github.com/ppy/osu/pull/10973 due to removed masking specification.
Closes #11067 .
2020-12-03 13:26:28 +09:00
Dean Herbert
a852a27dfb
Fix current beatmap temporarily becoming empty during ruleset change
...
When changing the ruleset at song select, there was a scenario where it
would be set to default (empty) for one debounce length where this was
not actually required. This occurs when the currently selected beatmap
set has other difficulties which match the target ruleset, specifically.
2020-11-30 19:36:30 +09:00
Dean Herbert
792934f2c4
Allow scroll type to be specified
...
This brings back the ability for the carousel to scroll in a classic
way. It turns out this is generally what we want for "seek" operations
like "random", else it's quite hard to get the expected animation.
I did experiment with applying the animation after the pooled panels are
retrieved, but in a best-case scenario there is still a gap where no
panels are displayed during the random seek operation.
2020-11-27 13:54:38 +09:00
Dean Herbert
0a48dd8f76
Delegate scroll animation to panels themselves
2020-11-26 18:42:51 +09:00
Dean Herbert
ad258e2e52
Update scroll position before applying any panel animations
...
In the case of automatic scroll requirements (ie. scroll to selected) we
are delegating the animation logic to the panels themselves. In order to
make this work correctly, the scroll operation needs to take effect
before any animation updates are run.
2020-11-26 18:33:41 +09:00
Dean Herbert
6058c66edb
Move drawable carousel set movement logic into panels themselves
2020-11-26 18:32:43 +09:00
Dean Herbert
f8db7a9902
Remove ScrollableContent container from carousel
...
This was causing multiple issues with masking and sizing and really
didn't need to exist in the first place. Also not sure why the pool was
nested inside the scroll container, but it isn't any more. Probably for
the best.
2020-11-26 18:28:54 +09:00
Endrik Tombak
72d9da5fac
Apply review suggestions
2020-11-21 14:26:09 +02:00
Endrik Tombak
6c5a6b42e5
Only calculate recommended SR once
2020-11-21 14:09:32 +02:00
Endrik Tombak
944f3480c2
Merge branch 'master' of https://github.com/ppy/osu into present-recommended
...
Conflicts:
osu.Game/OsuGameBase.cs
osu.Game/Screens/Select/DifficultyRecommender.cs
osu.Game/Screens/Select/SongSelect.cs
2020-11-21 14:01:01 +02:00
Dean Herbert
2db42f8e67
Remove default allowRetry parameter value from ResultsScreen
2020-11-20 14:35:44 +09:00
Dean Herbert
5113d4af8f
Rename BeatmapDifficultyManager to BeatmapDifficultyCache
2020-11-06 13:14:29 +09:00
Dan Balasescu
98c992004b
Merge pull request #10660 from peppy/fix-song-select-first-track-looping
...
Fix looping mode not being set on first track after entering song select
2020-11-04 14:37:27 +09:00
Dean Herbert
cfe3218239
Move scheduler call to inside method itself for added safety
2020-11-04 10:23:06 +09:00
Dean Herbert
d788931661
Fix LoadComponentAsync calls potentially occuring after beatmap wedge disposal
...
As seen in https://ci.appveyor.com/project/peppy/osu/builds/36109658/tests .
Also adds cancellation logic for good measure.
2020-11-03 19:53:45 +09:00
Dean Herbert
df9ff76f23
Reduce assert to guard in the outwards direction
2020-11-03 16:49:13 +09:00
Dean Herbert
d5c95a8b46
Centralise into methods and add assertions for safety
2020-11-03 00:45:55 +09:00
Dean Herbert
c3d3856a64
Fix looping mode not being set on first track after entering song select
...
Closes #10656 .
2020-11-02 23:51:02 +09:00
smoogipoo
6f623d8cca
Rename IsUserPaused -> UserPauseRequested
2020-11-02 16:08:59 +09:00
Dean Herbert
8f2cd0e8c5
Add matching requestedByUser parameter to Play method
2020-11-02 15:01:30 +09:00
Dean Herbert
6e2d722b8a
Merge pull request #10649 from ppy/dependabot/nuget/Microsoft.CodeAnalysis.FxCopAnalyzers-3.3.1
2020-11-02 11:52:38 +09:00
Dean Herbert
61c9bb3245
Merge branch 'master' into dependabot/nuget/Microsoft.CodeAnalysis.FxCopAnalyzers-3.3.1
2020-11-02 10:56:09 +09:00
Dan Balasescu
b1b52f9073
Merge branch 'master' into fix-resume-beatmap-options-edit
2020-11-02 10:46:31 +09:00
Joehu
71d55f16f3
Fix edit beatmap options button not resuming back to song select
2020-11-01 13:50:38 -08:00
Bartłomiej Dach
3090b6ccb5
Resolve CA2249 inspections
...
"Use `string.Contains` instead of `string.IndexOf` to improve
readability"
2020-11-01 18:54:44 +01:00
cadon0
a1fa6588f6
Fix "bounce" when metadata container text is empty
2020-10-31 01:06:19 +13:00
Dean Herbert
8b04cd2cb0
Fix a potential null reference when loading carousel difficulties
2020-10-25 20:28:24 +09:00
Dean Herbert
8232bf1957
Merge pull request #10576 from Game4all/song-select-wedge-dynamic-star-rating
2020-10-23 15:39:02 +09:00
Dean Herbert
9753dab93b
Remove IOnlineComponent and change existing components to use bindable flow
2020-10-22 14:19:12 +09:00
Lucas A
cf69eacae9
Make StarRatingDisplay dynamic.
2020-10-21 19:05:14 +02:00
Lucas A
670775cecb
Make beatmap wedge difficulty indicator color update dynamically.
2020-10-21 18:57:48 +02:00
Dan Balasescu
1fe987d4b3
Merge pull request #10497 from peppy/beatmap-carousel-less-diffcalc-stutter
...
Disable difficulty calculation for set-level difficulty icons
2020-10-20 14:57:34 +09:00
Dan Balasescu
976f96b51d
Merge branch 'master' into beatmap-carousel-refactor-less-alloc-overhead
2020-10-20 14:26:23 +09:00
Dan Balasescu
13060b8575
Merge branch 'master' into beatmap-carousel-less-diffcalc-stutter
2020-10-20 14:26:16 +09:00
Dean Herbert
d5940193a2
Ensure visible items is greater than zero before trying to display a range
2020-10-19 19:55:20 +09:00
Dean Herbert
9106e97c37
Ensure max value in clamp is at least zero
2020-10-19 19:10:01 +09:00
Dean Herbert
1c2185e969
Replace comment with link to issue
2020-10-19 18:41:28 +09:00
Dean Herbert
044622a7a6
Fix out of bounds issues
2020-10-19 18:41:17 +09:00
Dean Herbert
467bb9b96f
Merge branch 'master' into beatmap-carousel-refactor
2020-10-19 13:17:11 +09:00
Dean Herbert
bff3856c83
Account for panel height when removing as off-screen
2020-10-19 13:13:32 +09:00
Dean Herbert
ee0efa0b4c
Fix off-by-one in display range retrieval logic
2020-10-19 13:05:42 +09:00
Dean Herbert
4590d9b93b
Remove outdated comment logic
2020-10-19 13:04:12 +09:00
Berkan Diler
cc11283143
Use string.Starts-/EndsWith char overloads
2020-10-16 11:27:02 +02:00
Dean Herbert
88ffcb9234
Update EndsWith usages
2020-10-16 12:58:34 +09:00
Dean Herbert
30e1fce7a4
Reduce alloc overhead of DrawableCarouselBeatmapSet using new function-based ctor
2020-10-14 15:10:50 +09:00
Dean Herbert
07e6609e6d
Disable difficulty calculation for set-level difficulty icons
2020-10-14 14:16:22 +09:00
Dean Herbert
e662dc5342
Add missing licence headers
2020-10-13 20:57:26 +09:00
Dean Herbert
8057ea1097
Fix formatting issues
2020-10-13 20:50:36 +09:00
Dean Herbert
3d416f4d64
Clean up beatmapSet resolution in DrawableCarouselBeatmapSet
2020-10-13 19:31:29 +09:00
Dean Herbert
75b6a5e17e
Remove unnecessary hack (fixed via framework update)
2020-10-13 19:31:29 +09:00
Dean Herbert
5d11db7753
Locallise ChildItems to DrawableCarouselBeatmapSet for clarity
2020-10-13 19:31:29 +09:00
Dean Herbert
37daefc2b5
Remove outdated comment
2020-10-13 19:12:33 +09:00
Dean Herbert
8eca28e8bc
Add comment about off-screen loading
2020-10-13 19:10:35 +09:00
Dean Herbert
834b0186f4
Adjust fade duration to be slightly shorter
2020-10-13 18:50:10 +09:00
Dean Herbert
2346644c04
Switch DelayedLoadUnloadWrappers to DelayedLoadWrappers
...
Due to pooling usage, there is no time we need to unload. Switching to
DelayedLoadWrapper cleans up the code and reduces overhead
substantially.
2020-10-13 18:47:40 +09:00
Dean Herbert
a1801f8ae4
Unmark todo for now
2020-10-13 18:47:36 +09:00
Dean Herbert
40a0ab7aaa
Avoid allocating CarouselItems for bounds checks
2020-10-13 18:33:31 +09:00
Dean Herbert
4f4f222514
Remove unnecessary fade (already applied by base DrawableCarouselItem)
2020-10-13 18:28:28 +09:00
Dean Herbert
83358d487f
Remove logging
2020-10-13 18:18:22 +09:00
Dean Herbert
3d9ea852ec
Remove masking override (no longer needed as our size is now correct)
2020-10-13 18:14:23 +09:00
Dean Herbert
69650c16fc
Simplify vertical position calculations by including spacing in height definition
2020-10-13 18:13:36 +09:00
Dean Herbert
b1ddb08a4e
Fix right click context menus appearing in incorrect locations
2020-10-13 18:01:12 +09:00
Dean Herbert
d9a6a6b245
Split content out into own class
2020-10-13 18:01:12 +09:00
Dean Herbert
9b2ebb8f0f
Fix main content DelayedLoadUnloadWrapper not getting a valid size before load
2020-10-13 17:45:41 +09:00
Dean Herbert
f3b937e358
Fix masking issues with certain aspect ratio displays
2020-10-13 17:37:33 +09:00
Dean Herbert
fdd4d95cdc
Fix difficulties being at incorrect vertical positions after filter is applied
2020-10-13 17:37:33 +09:00
Dean Herbert
1f0aa974dd
Fix failing tests
2020-10-13 17:37:33 +09:00
Dean Herbert
b536f571fd
Move header height propagation to update for safety
2020-10-13 17:37:33 +09:00
Dean Herbert
ded09b78cb
Avoid usage of AutoSize for DrawableCarouselItems in general
2020-10-13 17:37:33 +09:00
Dean Herbert
cecdf14f53
Avoid reconstructing beatmap difficulties that were recently displayed
2020-10-13 17:37:33 +09:00
Dean Herbert
1da49073ab
Calculate content height automatically
2020-10-13 17:37:33 +09:00
Dean Herbert
c08b5e8d03
Align beatmap difficulties correctly
2020-10-13 17:37:33 +09:00
Dean Herbert
cfec4f4fc1
Extract header element from base DrawableCarouselItem class
2020-10-13 17:37:33 +09:00
Dean Herbert
2aad482545
Fix x offsets of difficulties not being updated
2020-10-13 17:37:33 +09:00
Dean Herbert
1b7e3397c6
Use expiry to avoid ToArray
2020-10-13 17:37:33 +09:00
Dean Herbert
075bf23714
Better track off-screen drawables (and return to pool less often)
2020-10-13 17:37:33 +09:00
Dean Herbert
29983afcef
Replace pool/cleanup logic with simplest form possible
...
This will temporarily break panels that go off-screen, as they will
disappear immediately
2020-10-13 17:37:33 +09:00
Dean Herbert
06e84c8eb3
Add comments and split out update steps into a more logical flow
2020-10-13 17:37:33 +09:00
Dean Herbert
20b54fb904
Move transform clean-up to pooling free call
2020-10-13 17:37:33 +09:00
Dean Herbert
f6aa448523
Store y positions inside items rather than in a separate array
2020-10-13 17:37:33 +09:00
Dean Herbert
b92c22ad42
Add logging
2020-10-13 17:37:33 +09:00
Dean Herbert
9814e9ba7f
Split classes out to reduce loc burder on DrawableCarouselBeatmapSet
2020-10-13 17:37:33 +09:00
Dean Herbert
975cd5a840
Add back beatmap difficulty appear/disappear movement
2020-10-13 17:37:33 +09:00
Dean Herbert
fd8654cff3
Add back difficulty panel spacing
2020-10-13 17:37:33 +09:00
Dean Herbert
ce67f65084
Fix single results not showing up
2020-10-13 17:37:33 +09:00
Dean Herbert
220c8ba2c4
Fix incorrect vertical offsets when difficulties are filtered away
2020-10-13 17:37:33 +09:00
Dean Herbert
82f9ca3de9
Bind to filter event changes in base drawable item
2020-10-13 17:37:33 +09:00
Dean Herbert
813ee19728
Use existing event flow for rendering beatmap difficulties
2020-10-13 17:37:33 +09:00
Dean Herbert
8847cedf29
Add initial pass of vertical transforms
2020-10-13 17:37:33 +09:00
Dean Herbert
15325f5f51
Base bounds checks on +1 (to avoid worrying about current item heights)
2020-10-13 17:37:33 +09:00
Dean Herbert
bb03c5d77c
Temporarily disable masking temporarily to fix panels disappearing at extents
2020-10-13 17:37:33 +09:00
Dean Herbert
524419d5e4
Fix filtered items being considered for height calculation
2020-10-13 17:37:33 +09:00
Dean Herbert
0a144a1388
Correctly free panels after use to avoid finalizer disposal of subtree
2020-10-13 17:37:33 +09:00
Dean Herbert
c5a6f4b453
Fix scroll to selected beatmap
2020-10-13 17:37:33 +09:00
Dean Herbert
5c29aa8cce
Fix multiple difficulties being expanded at once
2020-10-13 17:37:33 +09:00
Dean Herbert
5c2f134665
Add back left offset for selected set
2020-10-13 17:37:33 +09:00
Dean Herbert
3cfc0dc82d
Add safeties to beatmap panel loading code
2020-10-13 17:37:33 +09:00
Dean Herbert
954d43ef56
Debounce state application events
2020-10-13 17:37:33 +09:00
Dean Herbert
ca1f5dcada
Add back panel padding
2020-10-13 17:37:33 +09:00
Dean Herbert
0400b34349
Load more components asynchronously after pool resolution
2020-10-13 17:37:33 +09:00
Dean Herbert
f3b24b9bb5
Avoid performing eager selection constantly on adding ranges of new children
2020-10-13 17:37:33 +09:00
Dean Herbert
0a978c6131
Add basic pooling setup
2020-10-13 17:37:33 +09:00
Dean Herbert
f17d661c1a
Add basic range-based invalidation
2020-10-13 17:37:33 +09:00
Dean Herbert
3143224e5b
Refactor how drawable carousel items are constructed
2020-10-13 17:37:33 +09:00
Dean Herbert
9193f5b0ba
Expose panel height from non-drawable models
2020-10-13 17:37:33 +09:00
Dean Herbert
a393bbe8f7
Remove direct drawable storage from carousel models
2020-10-13 17:37:33 +09:00
Dean Herbert
73c238fae3
Add the ability to search for local beatmaps via online IDs
...
Closes #10470 .
2020-10-10 21:34:11 +09:00
Joehu
c6386ea605
Remember leaderboard mods filter selection in song select
2020-09-15 21:53:35 -07:00
Dean Herbert
3c70b3127c
Fix potential nullref in FilterControl during asynchronous load
2020-09-15 23:19:31 +09:00
Dan Balasescu
6cbff98295
Merge branch 'master' into add-collections-to-beatmap-options
2020-09-15 15:23:33 +09:00
Dean Herbert
2c7492d717
Add null check in SongSelect disposal for safety
2020-09-15 14:34:58 +09:00
Joehu
43daabc982
Remove unused using and move dialog to BDL
2020-09-14 12:10:00 -07:00
Joehu
c833f5fcc4
Reorder buttons to match stable
2020-09-14 11:23:41 -07:00
Joehu
57610ddad5
Fix beatmap options absorbing input from toolbar ruleset selector
2020-09-14 11:22:16 -07:00
Joehu
c30174cea3
Add manage collections button to beatmap options
2020-09-14 11:21:23 -07:00
Joehu
1a8a7ae7f8
Remove hardcoded key param from AddButton
2020-09-14 11:19:18 -07:00
Joehu
368aca015a
Move override methods to bottom
2020-09-14 11:18:00 -07:00
Bartłomiej Dach
a377cccb4d
Unsubscribe from track changed event on disposal
2020-09-14 17:10:35 +02:00