1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-24 23:12:54 +08:00
Commit Graph

3116 Commits

Author SHA1 Message Date
Dean Herbert
3ea7588a91 Update continuation usages to use GetCompletedResult 2022-01-06 22:53:07 +09:00
Dean Herbert
73b40e6833 Replace usage of .Result with .WaitSafelyForResult 2022-01-04 11:51:41 +09:00
Dean Herbert
5b3a154431 Fix potential errors thrown during beatmap leaderboard display due to incorrect beatmap reference
Specifically, the global `BeatmapInfo` is referenced inside the web
request's success callback, and used to attempt population via methods
which expect non-null beatmap inputs.

Closes #16211.
2021-12-22 17:24:48 +09:00
Dean Herbert
9ac8e6c81c Add missing null check before attempting to populate bpm info 2021-12-10 13:53:48 +09:00
Dean Herbert
e7e61cd9ab Fix potential crash due to children being mutated after disposal
This is a bit of an unfortunate edge case where the unbind-on-disposal
doesn't help, since the binding is happening in BDL, and the usage is in
a nested `LoadComponentAsync` call. Combine those and you have a recipe
for disaster.
2021-12-09 18:52:00 +09:00
Dean Herbert
8d9c37a825 Merge branch 'master' into primary-key-consistency 2021-12-08 21:34:38 +09:00
Dean Herbert
1eed2436e6 Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
Dean Herbert
7a3c69544b
Merge pull request #15799 from smoogipoo/fix-songselect-test-failures-2
Fix SongSelect-related test failures
2021-11-25 23:01:06 +09:00
Dan Balasescu
09dd054283 Fix SongSelect-related test failures 2021-11-25 21:11:13 +09:00
Dean Herbert
79459c1aeb Fix typo in class and variable names 2021-11-25 17:12:15 +09:00
Dean Herbert
9dcb20a821 Rename Stable to Legacy and add xmldoc 2021-11-25 15:39:05 +09:00
Dean Herbert
183b95cbc2 Rename BeatmapSetOnlineStatus to BeatmapOnlineStatus
This variable is used at more than just a set level.
2021-11-24 18:42:49 +09:00
Dean Herbert
729f681938 Update cases where equality can be used instead of primary key equality 2021-11-24 12:49:57 +09:00
Bartłomiej Dach
15feb17da8
Change difficulty cache storage type to nullable
The recent changes related to adding support for working beatmap load
cancellation exposed a flaw in the beatmap difficulty cache. With the
way the difficulty computation logic was written, any error in the
calculation process (including beatmap load timeout, or cancellation)
would result in a 0.00 star rating being permanently cached in memory
for the given beatmap.

To resolve, change the difficulty cache's return type to nullable.
In failure scenarios, `null` is returned, rather than
`default(StarDifficulty)` as done previously.
2021-11-20 17:00:50 +01:00
Dean Herbert
83b4625bd5 Replace existing cases with new helper method 2021-11-19 22:15:41 +09:00
Dean Herbert
66c307e0ee Remove usage of key repeat helper method 2021-11-18 13:13:36 +09:00
Dean Herbert
3de8125eac Update UI cases where repeat should not be handled 2021-11-18 13:13:36 +09:00
Dean Herbert
7c2e79f911 Update all simple cases of switching to IWorkingBeatmap 2021-11-17 20:56:57 +09:00
Dean Herbert
2dd721f760 Fix incorrect CancellationToken being used for inner check during leaderboard updates 2021-11-16 17:41:16 +09:00
Dean Herbert
d2d66766d4
Merge branch 'master' into songselect-audio-improvements 2021-11-12 19:40:04 +09:00
Dean Herbert
692e846acd Rename BeatmapSetInfo.OnlineBeatmapSetID to OnlineID to match interface 2021-11-12 17:52:44 +09:00
Dean Herbert
6a098a8634 Rename BeatmapInfo.OnlineBeatmapID to OnlineID to match interface 2021-11-12 17:46:24 +09:00
Jamie Taylor
069ee6980f
Add debounce to sample playback 2021-11-11 19:20:50 +09:00
Dean Herbert
51a353e12d Rename BeatmapInfo.Version to DifficultyName to match underlying interface 2021-11-11 17:20:53 +09:00
Dean Herbert
ebe58cee11 Rename BeatmapInfo.StarDifficulty to StarRating to match underlying interface 2021-11-11 17:19:46 +09:00
Jamie Taylor
5f462b6441
Move beatmap/difficulty change sample playback to outside of debounce 2021-11-10 17:15:08 +09:00
Jamie Taylor
6dc13ef396
Use default hover sample instead of song-ping (they're the same sample anyway) 2021-11-10 17:14:20 +09:00
Dean Herbert
78aef9ce86
Merge branch 'master' into remove-stupid-weak-reference-bindable-events 2021-11-08 13:35:49 +09:00
Dean Herbert
62600b47b1 Merge branch 'master' into user-class-cleanup 2021-11-08 12:51:12 +09:00
Dean Herbert
54f72d68ca Revert weird event flow in model manager/importers 2021-11-05 19:12:49 +09:00
Dean Herbert
6399c695e8 Update usages of BufferedContainer in line with framework changes 2021-11-05 15:54:49 +09:00
Dean Herbert
7049d0de66 Merge branch 'master' into beatmap-refactor/remove-online-info 2021-11-05 01:16:11 +09:00
Dean Herbert
ed07ee8c61 Update all existing usages of AuthorString/AuthorId
Unfortunately the getters need to be left in place else EF breaks.
2021-11-04 18:59:37 +09:00
Dean Herbert
86540d1fb6 Update existing usages of Author as string to access Username directly 2021-11-04 18:57:54 +09:00
Dean Herbert
d2831b1152 Merge branch 'beatmap-refactor/remove-online-info' into beatmap-refactor/to-model-removal-2 2021-11-04 17:09:50 +09:00
Dean Herbert
317506d4d7 Fix a few more "maybe null" inspections 2021-11-04 16:11:23 +09:00
Dean Herbert
9c926e5514 Remove BeatmapSetInfo.OnlineInfo and all usages 2021-11-04 15:23:04 +09:00
Dean Herbert
d1e6d1cb98 Update some other missed incorrect null/empty usages 2021-11-04 14:50:43 +09:00
Dean Herbert
67d9590a79 Fix new inspections 2021-11-04 14:02:09 +09:00
Bartłomiej Dach
98367fc482
Update usages of GetLocalised{-> Bindable}String 2021-11-02 21:42:01 +01:00
Dean Herbert
b21e0e7efb Merge branch 'beatmap-refactor/get-and-present' into beatmap-refactor/beatmap-overlays 2021-11-01 18:07:51 +09:00
Dean Herbert
b98faf6159 Merge branch 'master' into score-refactor/isolated-serialisation 2021-11-01 15:49:25 +09:00
Bartłomiej Dach
914e5c0f9d
Fix star rating not updating for some mods on details tab in song select
`AdvancedStats` was locally assuming that the only changes in mods that
are relevant to it are if the mods are `IApplicableToDifficulty`. This
is not true, as other mods (such as `IApplicableToRate` mods, or more
recently, Flashlight) can also affect star difficulty, which is shown on
one of the bars in `AdvancedStats`.
2021-10-31 18:58:17 +01:00
Dean Herbert
a16c8f1ebc Update all beatmap overlay views to use APIBeatmap/APIBeatmapSet 2021-10-29 18:50:55 +09:00
Dean Herbert
3f030cebf4 Remove local score copying in GetScoresRequest to allow APIScoreInfo.Beatmap to be APIBeatmap 2021-10-29 14:14:25 +09:00
Dean Herbert
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Dan Balasescu
efe6763226
Merge branch 'master' into move-online-beatmap-metrics 2021-10-26 14:24:40 +09:00
Bartłomiej Dach
6802e9ec10
Remove FixedWidth and add AutoSizeAxes specs to all usages 2021-10-25 20:24:48 +02:00
Dean Herbert
2c308f3008 Rename BeatmapMetrics to APIFailTimes 2021-10-25 15:34:41 +09:00
Dean Herbert
20baae9094 Move online metrics out of BeatmapInfo model 2021-10-25 15:32:18 +09:00
Dean Herbert
045dd94a6e Move online metrics out of BeatmapSetInfo model 2021-10-25 15:12:39 +09:00
Dean Herbert
e0babe4b79 Add global logging of WorkingBeatmap changes 2021-10-14 14:07:43 +09:00
Dean Herbert
bd84a8b749 Merge branch 'new-interfaces' into beatmap-difficulty-more-interface-usage 2021-10-05 18:21:21 +09:00
Dean Herbert
d3b9660148 Move common interface implementations to extension methods 2021-10-05 14:41:14 +09:00
Dean Herbert
853cf6feaa Rename last remaining BeatmapInfo Beatmap usage 2021-10-04 17:35:53 +09:00
Dean Herbert
ec61c3c5ee Rename all remaining cases 2021-10-03 00:55:29 +09:00
Dean Herbert
973c31132b Rename BeatmapInfo variables which were named beatmap for clarity 2021-10-02 12:45:34 +09:00
Dean Herbert
a92d499d7a Convert usages of BeatmapDifficulty to IBeatmapDifficultyInfo 2021-10-01 16:55:50 +09:00
smoogipoo
f9d5abff8a Update with keybinding changes 2021-09-16 18:26:12 +09:00
Dean Herbert
fa693bb8a8 Move MusicController adjustment set to inside OsuScreen itself (and result nullable) 2021-09-16 16:08:09 +09:00
AbstractQbit
318f0941ca Move all the "inherit previous AllowTrackAdjustments" logic into OsuScreen 2021-09-15 21:25:39 +03:00
AbstractQbit
f0439ef50b Remove unnecessary AllowTrackAdjustments overrides, add true to SongSelect 2021-09-15 13:12:57 +03:00
Dean Herbert
fa62c846c5
Merge pull request #14603 from smoogipoo/score-ordering
Fix scores not being ordered correctly on leaderboards
2021-09-07 19:18:37 +09:00
Bartłomiej Dach
fe2520c599
Add intermediary screen to avoid going back to menus 2021-09-05 21:48:09 +02:00
Dean Herbert
f223be0760
Merge branch 'master' into score-ordering 2021-09-02 14:45:59 +09:00
Dean Herbert
9e21f5a59c Rename LocalPlayer to User in mod select prefixes 2021-09-01 17:22:52 +09:00
smoogipoo
88fc53200e Refactor 2021-09-01 15:41:52 +09:00
smoogipoo
2de076a74b Merge branch 'adjust-classic-scoring' into score-ordering 2021-09-01 15:06:55 +09:00
smoogipoo
fee94236de Fix update-thread pauses 2021-08-31 21:36:31 +09:00
Dan Balasescu
b95da3ca27
Merge pull request #14576 from peppy/update-framework
Update framework
2021-08-30 21:09:58 +09:00
smoogipoo
e19d81c88c Fix potential incorrect ordering 2021-08-30 19:41:44 +09:00
smoogipoo
4ebb11472d Update Leaderboard to reorder scores based on scoring mode 2021-08-30 19:34:34 +09:00
Henry Lin
8137eee527
Reuse value to save enum name
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2021-08-30 18:05:47 +08:00
Henry Lin
04bf667d0d Parse partially typed enum names in filter query 2021-08-30 17:49:18 +08:00
Salman Ahmed
e374ef163d Update localisable formattable extensions usages inline with framework change 2021-08-29 15:00:28 +03:00
Endrik Tombak
43e8e3e922 Add comments to GetNextToSelect() 2021-08-27 18:16:53 +03:00
Endrik Tombak
8bd7837bf7 Fix off-by-one skip amount 2021-08-26 19:29:58 +03:00
Endrik Tombak
a8d869c31c Replace SkipWhile() LINQ with a while loop 2021-08-26 18:31:19 +03:00
Endrik Tombak
b484bd1af3 Rename parameter and remove redundant parentheses 2021-08-25 22:43:58 +03:00
Endrik Tombak
52a243afca Don't select random beatmap when previous was filtered 2021-08-25 22:03:07 +03:00
Salman Ahmed
847726547a Move mod value change callback inside wedge info text component 2021-08-24 07:53:49 +03:00
Dan Balasescu
ead1b47e0e
Merge branch 'master' into localise-beatmap-set-overlay 2021-08-23 13:22:52 +09:00
Bartłomiej Dach
9538a32b5e
Explicitly update beatmap info wedge on mod change
This used to already be the case prior to b419ea7, but in a very
roundabout way. Changes to the value of the star difficulty bindable -
including indirect changes via the set of active mods changing - would
trigger the wedge display to regenerate and load asynchronously.

b419ea7 accidentally broke this by moving down the bindable retrieval to
a lower level, at which point `WedgeInfoText` would only receive the set
of mods selected at the time at which a given beatmap was selected, and
not receive any further updates, breaking the BPM display updating in
real time (as `WedgeInfoText` could not be aware that rate-changing mods
were even in effect).

To resolve, explicitly reload the wedge's contents on mod changes.
2021-08-22 19:16:46 +02:00
Bartłomiej Dach
e4a8f72167
Add failing test case 2021-08-22 19:16:43 +02:00
Salman Ahmed
9b1720bd6c Merge branch 'master' into localise-beatmap-set-overlay 2021-08-22 10:53:31 +03:00
Dean Herbert
a65cd36a5f Move some constants to consts 2021-08-19 19:19:46 +09:00
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 TernaryStateMenuItems 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
Bartłomiej Dach
f17b2f1359 Ensure track is looping in song select immediately 2020-09-12 20:43:17 +02:00
smoogipoo
5b80a7db5f Re-namespace collections dropdown 2020-09-11 16:01:01 +09:00
Dean Herbert
033bd82953
Merge branch 'master' into fix-filtercontrol-order 2020-09-11 13:07:41 +09:00
Dean Herbert
b594a2a507 Import collections on initial import-from-stable step 2020-09-11 11:16:00 +09:00
smoogipoo
314cd13b74 Fix song select filter ordering 2020-09-10 23:36:22 +09:00
Dean Herbert
18d96738a1 Fix hard crash on deleting a collection with no collection selected 2020-09-10 19:52:34 +09:00
smoogipoo
6b56c6e83f Rename to CollectionMenuItem 2020-09-09 23:11:19 +09:00
smoogipoo
43525614ad Store raw BeatmapCollection in filter control 2020-09-09 23:10:21 +09:00
smoogipoo
1a023d2c88 Fix a few more tests 2020-09-09 16:33:48 +09:00
smoogipoo
0360f7d845 Move CollectionManager to OsuGame 2020-09-09 15:39:15 +09:00
smoogipoo
4ddf5f054b Rename BeatmapCollectionManager -> CollectionManager 2020-09-09 15:31:08 +09:00
smoogipoo
a5e1e8d043 Rename More... to Manage... 2020-09-08 18:57:18 +09:00
smoogipoo
ae022d7559 Show all items in dropdown, set global max height 2020-09-08 18:55:53 +09:00
smoogipoo
4962213cc4 Rename manage collections filter/text 2020-09-08 18:42:55 +09:00
smoogipoo
f581df47c8 Add "New collection..." item to dropdown 2020-09-08 18:25:09 +09:00
smoogipoo
c2da3d9c84 Fix button input and tests 2020-09-08 14:36:38 +09:00
smoogipoo
8a3c8a6185 Show button when selected or preselected 2020-09-08 14:03:49 +09:00
smoogipoo
32e3f5d091 Adjust button styling 2020-09-08 13:45:26 +09:00
Dean Herbert
8b770626fa Add missing '...' from some popup menu items 2020-09-08 12:18:08 +09:00
Dean Herbert
b15bbc882a Move items up in menu 2020-09-08 12:04:35 +09:00
Dean Herbert
3e5ea6c42f Change "Add to" to "Collections"
Doesn't make send to be 'add to' when it can also remove
2020-09-08 12:00:00 +09:00
smoogipoo
ca4423af74 Fix tests 2020-09-08 00:07:12 +09:00
smoogipoo
e37c04cb6d Change back to solid icon 2020-09-08 00:04:03 +09:00
smoogipoo
a1214512bc Add filter control tests 2020-09-07 23:57:49 +09:00
smoogipoo
98e9c4dc25 General refactorings 2020-09-07 21:08:48 +09:00
smoogipoo
c1d255a04c Split filter control into separate class 2020-09-07 20:44:39 +09:00
smoogipoo
120dfd50a6 Fix collection names not updating in dropdown 2020-09-07 20:29:28 +09:00
smoogipoo
b91a376f0a Split dropdown into separate file 2020-09-07 20:06:38 +09:00
smoogipoo
6cc4517600 Merge branch 'master' into collection-database 2020-09-07 20:03:11 +09:00
smoogipoo
4b4dd02942 Make collection name a bindable 2020-09-05 04:43:59 +09:00
smoogipoo
345fb9d8e0 Rename classes 2020-09-05 03:55:43 +09:00
smoogipoo
ebd11ae0b7 Add a collection management dialog 2020-09-05 03:52:07 +09:00
Dan Balasescu
743c888986
Merge branch 'master' into expose-wedge-icons 2020-09-04 16:22:14 +09:00
Dan Balasescu
b631430a5b
Merge pull request #10045 from peppy/add-info-wedge-icons
Update and add missing beatmap statistic icons to info wedge
2020-09-04 16:22:01 +09:00
smoogipoo
4399f5976c Fix global mods being retained by rooms 2020-09-04 15:20:55 +09:00
Dean Herbert
25e142965d Strongly type and expose default beatmap information icon implementations for other rulesets 2020-09-04 15:01:32 +09:00
Dean Herbert
cd253ab055 Further tweaks to get closer to design originals 2020-09-04 13:05:39 +09:00
Dean Herbert
d6b46936a0 Adjust sizing to match updated textures with less padding 2020-09-04 12:55:28 +09:00
Dean Herbert
a99e7a1dc2 Merge branch 'master' into add-info-wedge-icons 2020-09-03 21:57:58 +09:00
Dean Herbert
7a0c1411b6
Merge branch 'master' into timeshift-leaderboard-topscore 2020-09-03 18:11:04 +09:00
Dean Herbert
72cb65c22f Update and add missing beatmap statistic icons to info wedge 2020-09-03 17:52:22 +09:00
smoogipoo
fca0324264 Disallow being able to add dummy beatmap 2020-09-02 23:34:38 +09:00
smoogipoo
d83264f538 Add max height 2020-09-02 22:56:13 +09:00
smoogipoo
7fcbc3a814 Respond to changes in beatmap 2020-09-02 22:06:17 +09:00
smoogipoo
661eac8f1d Add add/remove button to dropdown items 2020-09-02 22:03:38 +09:00
smoogipoo
02a908752f Fix stackoverflow 2020-09-02 21:52:56 +09:00
smoogipoo
5ebead2bfd Prevent ValueChanged binds to external bindable 2020-09-02 21:44:07 +09:00
smoogipoo
d363a5d164 Add basic ordering 2020-09-02 21:19:15 +09:00
smoogipoo
094ddecc95 Add dropdowns to carousel items 2020-09-02 21:08:31 +09:00
smoogipoo
6d5e155106 Change to BindableList to notify of changes 2020-09-02 20:44:26 +09:00
smoogipoo
9dde37fe40 Hook up collection filter 2020-09-02 20:25:42 +09:00
smoogipoo
bb090a55e0 Add dropdown to filter control 2020-09-02 20:25:25 +09:00
Dan Balasescu
f08e7828da
Merge branch 'master' into beatmap-track-rework 2020-09-01 16:06:38 +09:00
Bartłomiej Dach
876fd21230 Apply shear to right-anchored items 2020-08-31 19:31:47 +02:00
Bartłomiej Dach
2e2f26449d Change anchoring to TopRight 2020-08-31 19:23:19 +02:00
smoogipoo
8cf26979fb Allow null user score 2020-08-31 20:16:28 +09:00
smoogipoo
ed74c39b55 Move UserTopScoreContainer into base leaderboard 2020-08-31 19:54:22 +09:00
Bartłomiej Dach
7d273d631b Do not show star difficulty on wedge if zero 2020-08-31 11:05:42 +02:00
Bartłomiej Dach
4736845318 Add spacing between star rating and beatmap status 2020-08-31 10:56:06 +02:00
smoogipoo
c3bfce6ccf Add star rating to beatmap wedge 2020-08-31 15:03:41 +09:00
Dean Herbert
b51db90147 Merge branch 'master' into beatmap-track-rework 2020-08-26 23:20:56 +09:00
Bartłomiej Dach
29b4d98aac Show retry/fail graph when either list is present 2020-08-24 20:41:50 +02:00
Bartłomiej Dach
cc6ae8e3bd Fix crash if only one count list is received from API 2020-08-24 20:41:31 +02:00
Keijia
b5b2e523ad change switch cases 2020-08-22 12:10:31 +03:00
Keijia
0b6185cd14 add "hp" filter keyword 2020-08-22 01:09:35 +03:00
Dean Herbert
e465afa280 Merge branch 'master' into beatmap-track-rework 2020-08-14 20:02:43 +09:00
smoogipoo
0500d82b5b Fix playlist items sharing mod instances 2020-08-13 19:48:41 +09:00
smoogipoo
7d35893ecd Make MusicController non-nullable 2020-08-11 12:40:58 +09:00
smoogipoo
f058f5e977 Fix incorrect value being set 2020-08-06 16:24:14 +09:00
smoogipoo
5c05fe3988 Expose track from MusicController 2020-08-06 16:24:14 +09:00
smoogipoo
6e42b8219c Move track to MusicController, compiles 2020-08-06 16:24:14 +09:00
smoogipoo
877b985e90 Remove local cancellation token 2020-07-24 16:11:28 +09:00
smoogipoo
b10b99a670 Change method signatures to remove tracked/untracked 2020-07-24 13:52:43 +09:00
smoogipoo
76284a0f01 Move cancellation out of condition 2020-07-23 23:18:51 +09:00
smoogipoo
107b5ca4f2 Add support for bindable retrieval 2020-07-21 23:13:04 +09:00
smoogipoo
9a52058a7a Update carousel beatmap SR on mod/ruleset changes 2020-07-16 21:08:24 +09:00
smoogipoo
24f14751ce Update beatmap details SR on ruleset/mod changes 2020-07-16 21:08:08 +09:00
Joehu
73e1bf0d89 Check sub screen's OnBackButton instead 2020-07-14 13:19:48 -07:00
Joehu
36041fc245 Fix back button not working correctly with multi song select's mod select 2020-07-14 00:29:57 -07:00
Joehu
4caf4d31d4 Fix mod select blocking home and alt f4 in song select 2020-07-14 00:00:10 -07:00
Dean Herbert
0718e9e4b6 Update outdated comment 2020-07-13 13:08:41 +09:00
Dean Herbert
ab11a112b7 Fix correct filter criteria not being applied to beatmap carousel if beatmaps take too long to load 2020-07-12 22:33:41 +09:00
Dean Herbert
f231b5925f Add "show converted" checkbox to song select for convenience 2020-07-09 13:47:23 +09:00
Dean Herbert
bbbe8d6f68 Remove group selector for now, tidy up code somewhat 2020-07-09 13:47:11 +09:00
smoogipoo
af7494b232 Improve quality of song select beatmap wedge 2020-06-29 13:58:35 +09:00
smoogipoo
099416b4c3 Move check inside next difficulty selection 2020-06-26 21:03:34 +09:00
smoogipoo
8f6d52550f Fix potential exception if button is pressed before selection 2020-06-26 20:32:13 +09:00
smoogipoo
1b4c31a84f Remove double schedule 2020-06-26 20:14:08 +09:00
smoogipoo
e3d654d33f Cleanup 2020-06-26 20:14:02 +09:00
Dean Herbert
d704a4597d Use existing helper function for key repeat 2020-06-25 21:33:02 +09:00
Dean Herbert
d7742766d0 Add key/press repeat support to carousel 2020-06-25 19:47:23 +09:00
Viktor Rosvall
9e1bf71233 Added text explaining a second copy will be made 2020-06-24 11:29:38 +02:00
Jack Boswell
eb3eb70a65
Merge branch 'master' into rebind-song-select 2020-06-10 22:03:26 +12:00
Jack Boswell (boswelja)
9dc1eab6ae Improve code readability of FooterButtonRandom OnPressed 2020-06-10 13:05:11 +12:00
Jack Boswell (boswelja)
ea9207e0ad Clean up FooterButtonRandom
Removed unnecessary using statements
Removed unnecessary constructor
2020-06-08 17:31:31 +12:00
Jack Boswell (boswelja)
bddd2b72ba Remove secondaryText and related code from FooterButtonRandom 2020-06-08 15:05:53 +12:00
Jack Boswell (boswelja)
8b7718116d Add missing blank lines 2020-06-07 16:06:18 +12:00
Jack Boswell (boswelja)
0e155c8eb9 Don't switch FooterButtonRandon Action on pressed.
Instead, create a new Action that invokes either NextRandom or PreviousRandom, depending on rewindSearch
2020-06-07 15:34:19 +12:00
Jack Boswell (boswelja)
a40475e6aa Remove triggerNextRandom from SongSelect 2020-06-04 21:09:47 +12:00
Jack Boswell (boswelja)
cb6e473910 Remove triggerPreviousRandom from SongSelect 2020-06-04 21:08:07 +12:00
Jack Boswell (boswelja)
cab132673a Break FooterButtonRandom creation into multiple lines 2020-06-04 21:03:10 +12:00
Jack Boswell (boswelja)
8533d7573d Rename FooterButtonRandom actions to better describe what they are used for 2020-06-04 21:00:29 +12:00
Jack Boswell (boswelja)
62984cb7f5 Remove unused Hotkey assignment 2020-06-04 20:58:53 +12:00
Jack Boswell (boswelja)
df148cf9d1 Rename secondaryAction to rewindSearch 2020-06-04 20:58:19 +12:00
Jack Boswell (boswelja)
bd3e40a8cf Move default return out of switch/case 2020-06-04 20:57:24 +12:00
Jack Boswell (boswelja)
a78a8c0d0d Add missing blank lines 2020-06-04 16:59:04 +12:00
Jack Boswell (boswelja)
7141bed78d Remove redundant directive from FooterButton 2020-06-04 16:40:16 +12:00
Jack Boswell (boswelja)
eb242085c6 Remove redundant interface from FooterButtonMods 2020-06-04 16:24:32 +12:00
Jack Boswell (boswelja)
aeb736e9d2 Fix CodeFactor code style issues 2020-06-04 16:13:50 +12:00
Jack Boswell (boswelja)
aa08847bc9 Set FooterButtonRandom actions properly when creating the button 2020-06-04 16:08:16 +12:00
Jack Boswell (boswelja)
568503ef99 Update FooterButtonRandom to comply with the changes in FooterButton
FooterButtonRandom now has 2 Action variables, one for both primary and secondary
2020-06-04 16:07:50 +12:00
Jack Boswell (boswelja)
05e4499bc1 Update FooterButtonOptions to comply with the changes in FooterButton 2020-06-04 15:25:18 +12:00
Jack Boswell (boswelja)
18db31b504 Update FooterButtonMods to comply with the changes in FooterButton 2020-06-04 15:25:05 +12:00
Jack Boswell (boswelja)
782fddb6f1 Modify FooterButton to implement IKeyBindingHandler for responding to hotkeys 2020-06-04 15:21:13 +12:00
smoogipoo
f3b5149648 Move some suggestions to warnings, resolve issues 2020-06-03 16:48:44 +09:00
Dean Herbert
93572fc17d
Merge branch 'master' into present-recommended 2020-06-03 12:31:23 +09:00
Lucas A
275d95082a Fix crash in testing environment. 2020-06-02 16:01:01 +02:00
Lucas A
f63c66396f Apply review suggestions. 2020-06-02 13:32:52 +02:00
Lucas A
e9b09373e7 Fix crashing if selected ruleset doesn't have an autoplay mod. 2020-06-01 17:41:04 +02:00
Dean Herbert
d4b7c81f96
Merge branch 'master' into results-screen-condensed-panel 2020-05-30 23:13:52 +09:00
Dean Herbert
f989f1aa00 Change event flow to avoid firing store delete events on update 2020-05-27 16:08:47 +09:00
smoogipoo
de0b6ec9f1 Create abstract implementation 2020-05-26 17:00:41 +09:00
Dean Herbert
052ad79fc6 Convert dangerous events to IBindables 2020-05-19 16:44:22 +09:00
Dean Herbert
a5c1b461f6 Fix null reference in difficulty recommender 2020-05-12 11:14:51 +09:00
smoogipoo
401c516503 Expose searchable terms from beatmap info instead 2020-05-07 13:04:08 +09:00
smoogipoo
5186da8412 Fix potential song select nullref 2020-05-07 11:37:04 +09:00
Dan Balasescu
0eae8d078b
Merge branch 'master' into master 2020-05-05 13:33:29 +09:00
alex
0e2ccac33b Add spaces to comments 2020-05-04 18:36:24 -07:00
Dean Herbert
06f58dd3e3 Ensure correct beatmap and ruleset when presenting a score from song select 2020-05-04 15:20:43 +09:00
Endrik Tombak
1c04d58d6e Fix recommender's incorrect usage of current ruleset 2020-05-01 19:44:35 +03:00
Bartłomiej Dach
623611d9dc Simplify ruleset ordering 2020-05-01 17:15:35 +02:00
Bartłomiej Dach
9f091f3a56 Do not query API for custom rulesets 2020-05-01 17:02:28 +02:00
Endrik Tombak
33a608fd15 Merge branch 'master' of https://github.com/ppy/osu into present-recommended
 Conflicts:
	osu.Game/Screens/Select/SongSelect.cs
2020-05-01 11:06:20 +03:00
Dean Herbert
000c34dc26 Move recommender to field construction 2020-04-30 21:01:53 +09:00
Dean Herbert
cf4e79cf38 Show loading spinner when carousel is not ready to be displayed 2020-04-30 11:51:06 +09:00
Dean Herbert
119000f1ab Reduce database includes where possible 2020-04-28 21:43:35 +09:00
Endrik Tombak
657bf5ad86 Merge branch 'master' of https://github.com/ppy/osu into present-recommended 2020-04-25 10:13:57 +03:00
smoogipoo
fcfb2b9026 Merge branch 'master' into fix-select-new-from-sub-screen 2020-04-21 14:36:53 +09:00
Dan Balasescu
3b3a7bdd85
Merge branch 'master' into scroll-to-center 2020-04-21 10:21:08 +09:00
Bartłomiej Dach
e3cd3cf1da Convert to auto-properties 2020-04-20 21:43:07 +02:00
Bartłomiej Dach
9b6e26583b Add xmldocs 2020-04-20 21:42:43 +02:00
Dean Herbert
ee1ccb8bcb Fix in a slightly different and hopefully more understandable way 2020-04-20 14:03:55 +09:00
Endrik Tombak
b57d709d15 Don't use Parent 2020-04-19 18:29:06 +03:00
Endrik Tombak
a8bfd21f3f Merge branch 'master' of https://github.com/ppy/osu into scroll-to-center 2020-04-19 18:21:34 +03:00
Endrik Tombak
4aaa00e321 Fix CI complaints 2020-04-17 20:33:12 +03:00
Endrik Tombak
1ac9ee5990 Optimize recommender (for custom rulesets) 2020-04-17 18:15:11 +03:00
Dean Herbert
5833a7ac91 Fix presenting new ruleset and beatmap at once causing wedge display desync 2020-04-17 18:56:17 +09:00
Dean Herbert
d62094cd4b Fix carousel not correctly updating when selection changes to a new beatmap from a child screen 2020-04-16 18:10:35 +09:00
Dean Herbert
03a74a4320 Apply same conditional check changes to DrawableCarouselBeatmapSet 2020-04-16 12:13:26 +09:00
Dean Herbert
91b13f91ea Add exception disallowing potential edit when disabled at a property level 2020-04-16 12:11:12 +09:00
Dean Herbert
c4caf38feb Simplify menu item checks (and add for other items) 2020-04-16 12:10:20 +09:00
Joehu
e2b28bfe88 Hide edit context menu item in multiplayer song select 2020-04-15 18:17:12 -07:00
Endrik Tombak
b5c1752f0a Calculate best ruleset order only once 2020-04-15 18:14:51 +03:00
Endrik Tombak
bbef94b4df Reset best order on ruleset change 2020-04-14 18:56:20 +03:00
Endrik Tombak
00d1cf1ce2 Recommend from all rulesets 2020-04-14 18:42:18 +03:00
Endrik Tombak
dd6c9173da Move DifficultyRecommender to OsuGameBase 2020-04-14 18:42:00 +03:00
Endrik Tombak
b475316a4e Simplify and comment 2020-04-12 20:40:08 +03:00
Endrik Tombak
63a1686dfb Scroll to screen middle 2020-04-12 12:42:52 +03:00
Dean Herbert
73a3f1fe65 Remove unnecessary DI 2020-04-11 17:30:34 +09:00
Dean Herbert
7aac0e59a8 Reduce dictionary lookups 2020-04-11 17:13:35 +09:00
Dean Herbert
310cf830d4 Simplify api request logic 2020-04-11 17:13:35 +09:00
Dean Herbert
abea7b5299 Tidy up function passing, naming, ordering etc. 2020-04-11 17:13:35 +09:00
Dean Herbert
7f753f6b4d Remove current ruleset from function call 2020-04-11 16:43:09 +09:00
Dean Herbert
a843793957 Un-nest class 2020-04-11 16:41:11 +09:00
Endrik Tombak
deaf24f141 Fix oversight on null 2020-04-09 19:30:40 +03:00
Endrik Tombak
35f97dfc75 Style changes 2020-04-09 18:59:18 +03:00
Endrik Tombak
f40bdcd34e Initial rewrite, moving API logic to SongSelect 2020-04-09 18:47:28 +03:00
Dean Herbert
260de77304
Merge branch 'master' into select-recommended 2020-04-09 15:30:35 +09:00
Dean Herbert
4bfc738f5b
Merge pull request #7639 from santerinogelainen/master
Add top rank to the beatmap carousel
2020-04-08 23:36:47 +09:00
smoogipoo
ed3e0a01e1 Re-namespace into song select 2020-04-07 15:31:22 +09:00
Joehu
57b6a91449 Remove unnecessary input override on footer button mods
Was used when it expanded on hover, but doesn't anymore.
2020-04-05 14:57:44 -07:00
Santeri Nogelainen
163de36777 Merge remote-tracking branch 'upstream/master' 2020-04-04 22:29:15 +03:00
Santeri Nogelainen
1e8badb14a Move all logic to TopLocalRank and remove CarouselBeatmapRank 2020-04-04 22:28:36 +03:00
Joehu
493b654011 Remove horizontal margin from mod display
Can skew center alignment on fill flow containers.

Fixes affected areas. Vector2(5, 0) is similar to MarginPadding { Left = 10 }.
2020-04-03 11:30:02 -07:00
Dean Herbert
b47a532df3 Adjust code formatting slightly 2020-03-30 00:07:48 +09:00
Endrik Tombak
b4f0500706 Invert logic 2020-03-28 20:21:21 +02:00
Endrik
2c27894527
Use All instead of ToList Any
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-03-28 19:58:33 +02:00
Santeri Nogelainen
6bde102207 Merge remote-tracking branch 'upstream/master' 2020-03-28 18:14:17 +02:00
Santeri Nogelainen
faa2b49be4 Fix namespace for CarouselBeatmapRank, make UpdateableRank in TopLocalRank readonly 2020-03-28 18:13:39 +02:00
Santeri Nogelainen
1c711147f3 Move all carousel rank logic into separate classes (TopLocalRank and CarouselBeatmapRank) 2020-03-28 17:22:01 +02:00
Endrik Tombak
87854fc4fa Rename variable 2020-03-28 13:23:31 +02:00
Endrik Tombak
6a0c5c87aa Use already existing variable 2020-03-28 13:06:03 +02:00
Endrik Tombak
fc3f9ff6fa Don't use drawables for select next 2020-03-28 12:54:48 +02:00
Endrik Tombak
bbbaaae3ee Write tests 2020-03-26 19:18:16 +02:00
Endrik Tombak
ee112c6f50 Move and change logic 2020-03-26 18:42:08 +02:00
Endrik Tombak
2f5dc93d61 Select recommended difficulty 2020-03-26 00:19:54 +02:00
Dean Herbert
b1d4261402 Fix track looping state not being reset when entering editor from song select
Closes #8432.
2020-03-25 15:50:19 +09:00
Dean Herbert
2a1e7a7ff0
Merge branch 'master' into fix-select-filter-not-absorbing-input 2020-03-24 14:03:58 +09:00
Dan Balasescu
6279c78e3c
Merge branch 'master' into fix-keypad-autoplay-shortcut 2020-03-24 13:34:31 +09:00
Joehu
5bc5119389 Handle OnHover on song select filter and footer 2020-03-23 16:03:33 -07:00
Joehu
96d962ab30 Fix autoplay keyboard shortcut not working with keypad enter key 2020-03-23 11:25:40 -07:00
Joehu
96848405fd Fix song select filter not absorbing input from carousel 2020-03-23 10:54:45 -07:00
Dean Herbert
47c7673c9e Fix crash when holding a key down while entering player 2020-03-23 17:04:54 +09:00
Dan Balasescu
d0c7b49376
Merge branch 'master' into fix-carousel-root-selects-from-nothing 2020-03-23 11:34:04 +09:00
Dean Herbert
29009c85c0
Fix typo in comment
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-03-22 00:32:53 +09:00
Dean Herbert
9b60b535e5 Fix selection not occurring when switching from empty ruleset on first load 2020-03-20 15:01:26 +09:00
Dean Herbert
be4a97c289 Correctly bypass last selected when it is filtered 2020-03-20 13:01:24 +09:00
Dean Herbert
8f9e97b4cc Fix carousel not remembering last selection correctly 2020-03-19 18:07:39 +09:00
unknown
2340142dc1 Merge branch 'master' of https://github.com/ppy/osu into linkify-metadata 2020-03-18 14:18:53 +08:00
smoogipoo
1c4296f5e7 Implement the new results screen 2020-03-17 17:43:16 +09:00
Dean Herbert
5e3668b2ea
Merge pull request #8260 from smoogipoo/add-workingbeatmap-timeout
Add beatmap loading timeout to prevent runaway loading scenarios
2020-03-17 11:17:35 +09:00
Dan Balasescu
e835f88c0c
Merge pull request #8255 from peppy/fix-carousel-scroll-while-import
Fix carousel scrolling being inoperable during beatmap import
2020-03-16 12:50:45 +09:00
Dan Balasescu
3e65f13c67
Merge branch 'master' into fix-carousel-scroll-while-import 2020-03-16 12:06:50 +09:00
Dean Herbert
9bb3a6c677 Merge branch 'master' into click-group-difficulty-icons 2020-03-16 12:01:09 +09:00
Dean Herbert
d6be8eec0c Merge branch 'master' into click-disabled-difficulty-icons 2020-03-16 11:30:57 +09:00
Dan Balasescu
f390c1995d
Apply comment suggestions
Co-Authored-By: Dean Herbert <pe@ppy.sh>
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-03-16 11:29:28 +09:00
Dan Balasescu
bd05462a7f
Merge branch 'master' into carousel-selection-fallback-improvement 2020-03-16 10:53:10 +09:00
Dan Balasescu
25a35a1370
Merge branch 'master' into always-apply-ruleset-filter 2020-03-16 10:32:36 +09:00
Dean Herbert
340d362d69 Appease inspectcode 2020-03-15 03:51:30 +09:00
smoogipoo
c33ca6e99c Decorate usages with exception management 2020-03-13 14:28:11 +09:00
Dean Herbert
ac70fcc544 Change logic to be more resilient by identifying user scroll events 2020-03-13 12:30:27 +09:00
Dean Herbert
5f8d180b5e Fix carousel scrolling being inoperable during beatmap import 2020-03-13 11:51:26 +09:00
Dean Herbert
04f1da04db Remove incorrect xmldoc from SelectBeatmap function 2020-03-13 10:52:08 +09:00
Dean Herbert
3f8b454ff4
Reword comment to match new filtering behaviour
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-03-13 10:01:28 +09:00
Dean Herbert
ca9cfbe51d Move selection fallback logic out of BeatmapCarousel to SongSelect 2020-03-12 18:42:08 +09:00
Dean Herbert
6e11c3014c Allow grouped difficulty icons to be clicked 2020-03-12 18:42:08 +09:00
Dean Herbert
ce5d01ed19 Allow filtered difficulty icons to be clicked 2020-03-12 18:42:08 +09:00
Dean Herbert
fc058f8896 Remove unnecessary this. prefix 2020-03-12 18:03:18 +09:00
Dean Herbert
933a8ffc8a Add test coverage 2020-03-12 17:10:51 +09:00
Dean Herbert
28ac5af91c Fix beatmap carousel tests loading beatmap manager beatmaps in test browser 2020-03-12 16:53:23 +09:00
Dean Herbert
63edcddaf1 Apply ruleset filter in all cases (even when bypassing filter for selection purposes) 2020-03-12 15:06:26 +09:00
Dan Balasescu
e6685c88fc
Merge pull request #8205 from peppy/always-scroll-to-selection
Fix changing ruleset at song select not scrolling the current selection back into view
2020-03-11 14:38:57 +09:00
Dan Balasescu
f8f8e3628f
Merge branch 'master' into always-scroll-to-selection 2020-03-11 13:38:28 +09:00
Dan Balasescu
9119e32f63
Merge branch 'master' into better-filter-bypass 2020-03-11 13:37:55 +09:00
Dean Herbert
ed837d3115 Use framework extension method for FromHex 2020-03-11 10:18:41 +09:00
Dean Herbert
a2d3f20409
Merge branch 'master' into better-filter-bypass 2020-03-11 02:55:14 +09:00
Dean Herbert
8294dd0b71 Fix changing ruleset at song selectnot scrolling the current selection back into view 2020-03-10 19:59:49 +09:00
Dean Herbert
979988235d Increase flexibility of StarCounter component 2020-03-08 15:56:22 +09:00
Dean Herbert
0477ef6c13 Force a selection after filtering to ensure correct difficulty is selected 2020-03-05 21:45:19 +09:00
Dean Herbert
332f56a7f8 Fix nullref in tests 2020-03-05 20:34:24 +09:00
Dean Herbert
f8776a0be4 Display all difficulties from overriding selection 2020-03-04 22:59:49 +09:00
Dean Herbert
a62550b323 Reapply filters on next change after a forced beatmap display 2020-03-04 20:14:18 +09:00
Dean Herbert
e890e45420 Fix Ctrl+Enter behaviour regression 2020-03-02 19:44:25 +09:00
Dean Herbert
48f2f615cd
Merge branch 'master' into fix-volume-bninding-handling 2020-03-02 19:28:36 +09:00
Dean Herbert
489bf16bea Add SelectNext and SelectPrevious global actions 2020-03-02 18:55:28 +09:00
smoogipoo
7ad6ad0bb0 Remove hacks that bypassed layout shortcomings 2020-02-27 13:32:23 +09:00
Dean Herbert
623b78d675 Combine all loading animation implementations 2020-02-21 15:32:46 +09:00
Dean Herbert
cd666166d5
Merge pull request #7809 from voidedWarranties/proposal-difficulty-icon-select
Allow selecting/playing a specific difficulty using the beatmapset difficulty icons
2020-02-21 10:24:12 +09:00
Dean Herbert
db4fe4f728
Merge branch 'master' into adjust-beatmap-overlay 2020-02-21 09:52:44 +09:00
smoogipoo
f9145ce5b4 Fix playlist items added with the wrong IDs 2020-02-17 17:02:19 +09:00
TheWildTree
64a9b9c6fb Remove redundant using directives 2020-02-16 21:52:08 +01:00
TheWildTree
4d180a685a Adjust font sizes and spacing in BeatmapSetOverlay 2020-02-16 21:43:33 +01:00
voidedWarranties
8c81f1e684 Move CarouselBeatmap access to private, test using indices 2020-02-15 17:51:55 -08:00
recapitalverb
2778c6617c
Merge branch 'master' into remove-duplicated-load 2020-02-15 15:13:35 +07:00
Dean Herbert
637c1dc840 In the case of only one playlist item, update with current selection on select 2020-02-15 14:41:16 +09:00
recapitalverb
7c9569c9a3
Merge branch 'master' into remove-duplicated-load 2020-02-15 12:10:34 +07:00
Dean Herbert
da68ae5461 Merge branch 'master' into match-songselect-playlist-logic 2020-02-15 12:27:51 +09:00
voidedWarranties
8e1ecddb1d Add testing 2020-02-14 17:23:24 -08:00
recapitalverb
c46d828716 Preserve permitNulls 2020-02-14 20:59:51 +07:00
recapitalverb
10798aeab3 Fix code formatting 2020-02-14 20:30:27 +07:00
recapitalverb
c753cb46c5 Use [Resolved] wherever possible 2020-02-14 20:14:00 +07:00
smoogipoo
f31220c1ee Fix exception when adding duplicate items 2020-02-14 19:56:43 +09:00
Dean Herbert
14f632b532 Merge branch 'master' into match-detail-area 2020-02-14 19:54:17 +09:00
smoogipoo
f0f739707f Add playlist support to match song select 2020-02-14 17:51:42 +09:00
Dean Herbert
66910f1ee3 Remove unnecessary bindable setter 2020-02-14 17:50:53 +09:00
Dean Herbert
48dcb91118 Merge branch 'master' into custom-detail-area 2020-02-14 17:40:12 +09:00
smoogipoo
5ec9f454d5 Implement the match beatmap detail area 2020-02-14 17:20:38 +09:00
smoogipoo
25e399f11b Merge branch 'match-playlist' into match-detail-area 2020-02-14 17:04:22 +09:00
voidedWarranties
368e6f9579 Use CarouselBeatmap.State to select 2020-02-13 17:47:16 -08:00
voidedWarranties
c871f07d2e Use CarouselBeatmap action to select beatmap 2020-02-13 17:14:46 -08:00
Dean Herbert
b9a296d3f9
Merge branch 'master' into remove-current-item 2020-02-13 19:34:15 +09:00
Dean Herbert
49a1725749
Merge pull request #7812 from smoogipoo/playlist-bindables
Make playlist beatmap and ruleset into bindables
2020-02-13 18:51:42 +09:00
smoogipoo
75bef15583 Remove "current" multiplayer room item 2020-02-13 18:48:28 +09:00
smoogipoo
91edadfe9d Make playlist beatmap and ruleset into bindables 2020-02-13 18:12:47 +09:00
smoogipoo
d4f14e552a Improve extensibility of mod display expansion 2020-02-13 18:05:53 +09:00
voidedWarranties
ad0de27964 Safer dependency injection and accessibility levels 2020-02-12 22:11:26 -08:00
smoogipoo
6f7196b0b8 Make beatmap detail area abstractable 2020-02-13 13:46:23 +09:00
voidedWarranties
f8b69fe632 Remove unnecessary carousel variable, fix code formatting 2020-02-12 20:11:39 -08:00
voidedWarranties
b126c00292 Use dependency loader to get SongSelect instance 2020-02-12 19:05:08 -08:00
voidedWarranties
2901ec9f26 Select specific difficulties using their icons 2020-02-11 20:05:26 -08:00
Dean Herbert
8186f72507 Remove unused using 2020-02-10 17:12:45 +09:00
Dean Herbert
66fb72cd8a Fix song select not showing active beatmap if it is filtered by local criteria 2020-02-10 16:59:54 +09:00
Dean Herbert
81cadb7875 Simplify the way multiple subscreens handle their disable states via a custom stack 2020-02-06 14:22:01 +09:00
recapitalverb
79bb476f4c
Merge branch 'master' into display-accuracy 2020-02-04 11:39:47 +07:00
Dan Balasescu
3600b0daf0
Merge branch 'master' into fix-mod-select-overflowing 2020-02-04 11:57:54 +09:00
Joehu
22e3150f68 Fix comment and remove magic numbers 2020-02-03 17:21:06 -08:00
recapitalverb
9898a926b2 Use ScoreInfo.DisplayAccuracy everywhere 2020-02-03 22:11:36 +07:00
Dan Balasescu
c6e7603e5e
Merge branch 'master' into safe-screen-lease 2020-02-03 18:18:13 +09:00
Dan Balasescu
93952d438f
Merge pull request #7677 from peppy/decouple-mod-select-bindable
Decouple ModSelectOverlay from global SelectedMods
2020-02-03 16:27:47 +09:00
Dean Herbert
9183c78319 Fix crash on exiting song select with ctrl-enter autoplay 2020-02-03 16:04:32 +09:00
Dean Herbert
aa1daa0ad5
Merge pull request #7703 from bdach/beatmap-stats-precision
Apply precision when determining bar colour in difficulty statistics
2020-02-02 22:31:52 +09:00
Bartłomiej Dach
e894acf53c Make star filter range bindables BindableDoubles
Due to using Bindable<double>s previously, song select's filter control
would not apply tolerance when checking IsDefault, therefore wrongly
hiding maps with star ratings above 10.1.
2020-02-01 22:48:46 +01:00
Joehu
609ee26030 Fix mod select overlay not showing up in test 2020-02-01 11:41:41 -08:00
Joehu
2d42a83bb9 Fix mod select overlay overflowing toolbar at max ui scale 2020-02-01 11:24:29 -08:00
Bartłomiej Dach
0bfadfbbf1 Apply precision when comparing adjusted values
In some cases, applying the Difficulty Adjust mod without actually
changing any of the settings previously caused the bar in song select
beatmap details to appear red/blue instead of staying white.

This was caused by not accounting for floating-point imprecisions when
determining bar colour in AdvancedStats. To resolve, first check
equality with tolerance, and only then apply blue/red colours if that
equality check does not hold.
2020-02-01 16:16:15 +01:00
Bartłomiej Dach
a74d22d9e5 Extract beatmap stats test to separate scene 2020-02-01 15:50:33 +01:00
Dean Herbert
ed368e44ea
Merge branch 'master' into safe-screen-lease 2020-02-01 02:11:18 +09:00
Dean Herbert
c5422743e2
Merge branch 'master' into decouple-mod-select-bindable 2020-02-01 02:06:23 +09:00
Dean Herbert
19f516e710 Ensure OsuScreen level leases are taken out synchronously 2020-01-31 19:10:44 +09:00
Dean Herbert
2f61d3f5ad Fix song select remaining issue locally 2020-01-31 17:35:53 +09:00
unknown
2952fc8cc4 remove unused using 2020-01-31 09:05:13 +08:00
unknown
b916366536 fix formatting 2020-01-31 08:17:39 +08:00
unknown
2274d70dac apply suggestions 2020-01-31 06:41:50 +08:00
Dean Herbert
7bf2e9b369 Decouple ModSelectOverlay from global SelectedMods 2020-01-30 17:38:15 +09:00
Dan Balasescu
09f6c57b0f
Merge branch 'master' into fix-import-different-ruleset 2020-01-30 15:08:25 +09:00
Dan Balasescu
c18b1b302c
Merge branch 'master' into editor-match-accessibility 2020-01-30 13:49:56 +09:00
unknown
0d3ccae1c2 Merge branch 'master' of https://github.com/ppy/osu into linkify-metadata 2020-01-30 12:31:17 +08:00
unknown
c5995acfff linkify metadata 2020-01-30 12:30:25 +08:00
Dean Herbert
c158570249
Fix typo in comment
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-01-30 11:31:34 +09:00
Dean Herbert
f72de235cc Remove unnecessary length specifications 2020-01-30 11:00:14 +09:00
Dean Herbert
37ecf8a060 Remove commented line 2020-01-30 10:50:48 +09:00
Dean Herbert
bea20efb64
Merge branch 'master' into mod_content_centering 2020-01-30 10:34:46 +09:00
Bartłomiej Dach
f130e48c9e Remove leftover negative margin 2020-01-29 19:17:07 +01:00
Bartłomiej Dach
c9dda78ded Refactor drawable hierarchy to center properly
* Use FillFlowContainer.Spacing instead of manually applying margins.
* Use Update() for calculating button padding to preserve it after
  mod button expansion and adjust FooterButtonRandom to use this method
  while avoiding flickering.
* Expose mod display margin to clear it in the footer button.
2020-01-29 18:59:51 +01:00
Dean Herbert
da6952407e Allow null DI 2020-01-29 23:01:57 +09:00
Dean Herbert
13eb32fea2 Fix editor being accessible for multiplayer song select 2020-01-29 22:20:34 +09:00
smoogipoo
76af8bea5d Fix percentage-formatted displays containing a space 2020-01-29 19:51:24 +09:00
Dean Herbert
7588c574a2 Fix presenting a beatmap from a different ruleset not working 2020-01-29 19:37:54 +09:00
Dean Herbert
77c06b1c6e Fix beatmap carousel potentially missing beatmap imports 2020-01-29 17:09:12 +09:00
Dean Herbert
12ff51f686 Fix key count being incorrectly adjusted by hard/easy mods 2020-01-28 17:21:50 +09:00
Dean Herbert
7aa5e8c23e Limit input propagation correctly 2020-01-27 14:55:47 +09:00
Dean Herbert
1c64b70b06 Revert "Fix crash due to misordered selection events"
This reverts commit 2d74609f50.
2020-01-27 14:53:24 +09:00
Dean Herbert
2d74609f50 Fix crash due to misordered selection events 2020-01-26 19:06:50 +09:00
Dean Herbert
92a5fbe948
Merge branch 'master' into star-filtering 2020-01-24 23:28:36 +09:00
smoogipoo
45a25214ab Make upper and lower bounds inclusive 2020-01-24 19:39:21 +09:00
smoogipoo
9e0e7be8d0 Modernise filter implementation 2020-01-24 18:57:17 +09:00
smoogipoo
12cc97ca31 Merge remote-tracking branch 'origin/master' into star-filtering
# Conflicts:
#	osu.Game.Tests/Visual/SongSelect/TestSceneBeatmapCarousel.cs
#	osu.Game/Screens/Select/Carousel/CarouselBeatmap.cs
#	osu.Game/Screens/Select/FilterControl.cs
#	osu.Game/Screens/Select/FilterCriteria.cs
2020-01-24 18:30:52 +09:00
Dean Herbert
fdde4a6858 Tidy up song select hierarchy to be more readable 2020-01-24 15:44:31 +09:00
Dean Herbert
c0a233e8bb Align background wedge with carousel 2020-01-24 15:00:10 +09:00
Dean Herbert
f8cb898516 Improve song select display on ultrawide displays (or when UI scale is set low) 2020-01-23 20:03:52 +09:00
Dean Herbert
8a7f7c5e46 Merge remote-tracking branch 'smoogipoo/void-key-up-returns' into update-framework 2020-01-22 22:57:56 +09:00
Dean Herbert
7c62cc3ac3 Merge remote-tracking branch 'smoogipoo/void-mouse-up-returns' into update-framework 2020-01-22 22:57:52 +09:00
Dean Herbert
5f8ffd9346 Merge remote-tracking branch 'smoogipoo/void-release-returns' into update-framework 2020-01-22 22:57:40 +09:00
smoogipoo
7b2f58eb30 Apply OnRelease method signature refactorings 2020-01-22 13:22:34 +09:00
smoogipoo
40f502c6d1 Apply input method signature refactorings 2020-01-20 19:35:37 +09:00
smoogipoo
bfb056c612 Apply input method signature refactorings 2020-01-20 18:17:21 +09:00
Dean Herbert
cd5290b030 Enforce using get-only auto property where possible 2020-01-20 13:50:27 +09:00
Dean Herbert
e88e40eec4 Expand on comment 2020-01-15 15:11:36 +09:00
Joehu
b42b23d65b Add comment for alt pressed
Taken from OsuScrollContainer
2020-01-14 20:52:15 -08:00
Joehu
2060be345d Move alt pressed condition to top of method 2020-01-14 20:44:55 -08:00
Joehu
c196e83e75 Allow changing volume in song select with arrow keys when pressing alt 2020-01-13 20:48:39 -08:00
TheWildTree
b5ac707c6c Remove unnecessary directive 2020-01-12 21:09:48 +01:00
TheWildTree
aa2645502c Fix adjusted value always being 0 2020-01-12 20:43:48 +01:00
Dean Herbert
56724d2580
Merge branch 'master' into #7146 2020-01-10 01:08:20 +08:00
smoogipoo
91735ff367 Update MathUtils namespace usages 2020-01-09 13:43:44 +09:00
smoogipoo
28510674ac Shorten body text 2020-01-06 17:48:29 +09:00
smoogipoo
61c269b17b Leaderboard should not change the model 2020-01-06 17:32:24 +09:00
smoogipoo
4a7f5f98df Cleanup methods/events 2020-01-06 17:20:09 +09:00
Willy Tu
e23c71be80 Update Resolved and Cached attribute issues 2020-01-03 11:34:26 -08:00
Willy Tu
0a4e180ce7 Merge branch 'master' of github.com:ppy/osu into #7146 2020-01-03 11:32:06 -08:00
Viktor Rosvall
ddec59ec91 Further refactoring. I think this may have polluted the FooterButton too much. Not sure what to do about the centering. 2020-01-01 12:22:19 +01:00
Viktor Rosvall
8695e57f62 Hides mod display when no mods are active to fix issue of invisible margin 2019-12-31 12:21:55 +01:00
Viktor Rosvall
f40ebc83ca Begun refractorization process of wrapping Button text in a FillFlowContainer 2019-12-30 23:58:49 +01:00
Viktor Rosvall
b0bcbf8b93 Adjusted margin to fix the 1 px increase 2019-12-30 21:55:09 +01:00
Viktor Rosvall
875a25c529 adjusted the margin values 2019-12-29 09:00:59 +01:00
Viktor Rosvall
b3d32710df Centered button mods by adding padding to FillFlowContainer 2019-12-29 00:19:51 +01:00
Dean Herbert
41d99df73c
Merge branch 'master' into allow-ctrl-tabbing-on-more-tab-controls 2019-12-25 20:49:45 +09:00
Joehu
b038c192d1 Rename property to IsSwitchable 2019-12-22 19:47:47 -08:00
Joehu
1342556894 Allow ctrl tabbing navigation to chat and song select leaderboards 2019-12-21 10:48:11 -08:00
Willy Tu
8e60ae7039 Removed directive is not required 2019-12-20 15:45:20 -08:00
Willy Tu
8353c893c0 Update BodyText of LocalScoreDeleteDialog 2019-12-20 12:00:10 -08:00
Dean Herbert
a6bdf04f6b Remove unused using 2019-12-20 18:36:39 +09:00
Dean Herbert
822903d5db Update song select statistics when mod changes settings 2019-12-20 18:01:35 +09:00
Willy Tu
ed07b779b1 Update to use score.ID identify local scores 2019-12-18 21:54:02 -08:00
Willy Tu
27163a5133 Removed unnecessary code for deleting individual local score. 2019-12-18 21:04:10 -08:00
Willy Tu
b67f986058 Fix CodeFactor issues 2019-12-18 19:26:35 -08:00
Willy Tu
531ac16743 Update Scoreboard Refresh Method for deleting individual scores 2019-12-18 19:22:42 -08:00
Willy Tu
d1fcadc700 Merge branch 'master' of github.com:ppy/osu into #7146 2019-12-18 19:16:54 -08:00
smoogipoo
2905a4418d Fix potential nullref 2019-12-18 21:30:57 +09:00
smoogipoo
cb5a35f8f9 Fix incorrect bindable valuechanged usage 2019-12-18 21:08:49 +09:00
smoogipoo
4e11fb0fd7 Merge remote-tracking branch 'refs/remotes/origin/master' into multiplier-text 2019-12-18 19:36:16 +09:00
Dan Balasescu
6683460240
Merge branch 'master' into update-beatmap-settings 2019-12-18 17:59:27 +09:00
smoogipoo
8e651962c7 Fix incorrectly binding inside BDL load() 2019-12-18 17:41:30 +09:00
Dean Herbert
ada2ae2b2c Use tuple to avoid potential for incorrect display 2019-12-18 17:12:41 +09:00
Dean Herbert
e87aa281bf Don't clone beatmap unnecessarily 2019-12-18 17:00:35 +09:00
wltu
4646524bf9 Remove unnecessary library 2019-12-17 13:18:20 -08:00
wltu
8aeef3f59a Added refresh scoreboard upon deleting local score and formatted the code 2019-12-17 12:56:30 -08:00
wltu
bb2b1475cd Merge branch 'master' of https://github.com/ppy/osu into #7146 2019-12-17 12:54:47 -08:00
Huo Yaoyuan
caf3f774ba CA1309: compare strings correctly. 2019-12-17 13:00:15 +08:00
Huo Yaoyuan
ecfc6dfa3d CA1825: use Array.Empty. 2019-12-17 12:59:48 +08:00
Willy Tu
bef9637fdf Implemented delete local score individually. Currently does not refresh the score screen after the delete is compelete. 2019-12-16 19:25:28 -08:00
Huo Yaoyuan
ab70abe8bd Turn off unexpected new warnings. 2019-12-15 20:07:56 +08:00
unknown
3945e7403a improve tests and refactor AdvancedStats 2019-12-13 09:39:54 +08:00
unknown
ec5b506960 apply mod difficulty settings during song select 2019-12-12 23:41:46 +08:00
Dean Herbert
cdde5d1d69 Fix song select filters not reapplied if in a child screen
Closes https://github.com/ppy/osu/issues/6980.
2019-12-10 02:30:23 +09:00
Huo Yaoyuan
ad1fb3bda2 Remove IComparable in constraint. 2019-12-09 17:48:41 +08:00
Dean Herbert
48287459a0 Optimise filters to avoid property retrieval
Also reduces number of instantiations of SearchableTerms array in the case of multiple criteria terms.
2019-12-05 01:52:22 +09:00
Dan Balasescu
19c5848e73
Merge branch 'master' into decouple-legacy-score-info 2019-12-04 11:47:27 +09:00
Huo Yaoyuan
a42f9447e6 Don't use Equals(object) on T?. 2019-12-03 20:07:22 +08:00
Dean Herbert
f0d49d0cdf Decouple APILegacyScoreInfo from ScoreInfo 2019-12-03 15:31:11 +09:00
Ganendra Afrasya
ada8dabf7e Add right margin on score multiplier text 2019-11-28 18:48:43 +07:00
Ganendra Afrasya
944835da23 Add multiplier score text on mods footer button 2019-11-28 12:01:40 +07:00
Huo Yaoyuan
c0fe91a84c Merge branch 'master' into sharpen 2019-11-26 18:21:50 +08:00
Berkan Diler
fccdbffa93 Use MathF instead of Math- functions when possible
MathF-functions are faster than the Math-counterpart and it looks cleaner, so use MathF when we cast to float or int anyway.
2019-11-25 00:45:42 +01:00
Dean Herbert
d8260f4a65 Reduce carousel scroll motion on initial display 2019-11-22 10:51:49 +09:00
Huo Yaoyuan
818553027b Merge branch 'master' into sharpen 2019-11-21 23:42:46 +08:00
Dan Balasescu
a7c074ff37
Merge branch 'master' into math_clamp 2019-11-21 11:08:56 +09:00
Berkan Diler
6cab517b2d .NET Standard 2.1 implements Math.Clamp , use it instead of MathHelper.Clamp from osuTK. 2019-11-20 13:37:47 +01:00
Dean Herbert
3ba9f840fd Fix song select not always scrolling to the correct location 2019-11-20 19:39:13 +09:00
Huo Yaoyuan
374ef6ff83 Merge branch 'master' into sharpen 2019-11-20 17:30:58 +08:00
Dean Herbert
8c9ed99b1b Merge remote-tracking branch 'upstream/master' into fix-carousel-double-filter 2019-11-20 17:24:54 +09:00
Dean Herbert
5b416eb7ba Move initial filter to run on entering 2019-11-20 17:24:43 +09:00
Dean Herbert
e0f59d8e24 Move method 2019-11-20 15:43:00 +09:00
Huo Yaoyuan
b04bca7db6 Reference elements in origin definition. 2019-11-17 20:55:40 +08:00
Dean Herbert
e9e37fc821 Add private setter for FilterControl 2019-11-15 18:23:35 +09:00
Dean Herbert
296fff9243 Merge remote-tracking branch 'upstream/master' into fix-carousel-double-filter 2019-11-15 18:20:36 +09:00
Dean Herbert
2c3109980a Fix broken merge 2019-11-15 13:51:39 +09:00
Dean Herbert
b8bb97607b Merge remote-tracking branch 'upstream/master' into fix-mod-retention 2019-11-15 13:46:44 +09:00
Huo Yaoyuan
677717875e Change a case to EqualityComparer.Default to handle null properly. 2019-11-14 17:35:02 +08:00
Huo Yaoyuan
f25b1ba06f Merge branch 'master' into equals 2019-11-14 17:33:44 +08:00
Dean Herbert
c15f909d83 Remove local bindable at song select, along with misplaced reset logic 2019-11-14 13:29:06 +09:00
Dean Herbert
d8a5750e5d
Fix typo
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2019-11-14 08:38:01 +09:00
Dean Herbert
a580b9079a
Reword comment 2019-11-14 08:28:41 +09:00
Huo Yaoyuan
87d40cf8d0 Resolve equals usages. 2019-11-13 22:35:50 +08:00
Dean Herbert
110c155fa0 Fix background loading twice when entering song select 2019-11-13 19:42:05 +09:00
Dean Herbert
280c1a0eb4 Fix carousel filtering twice on startup due to unpopulated ruleset 2019-11-13 19:04:52 +09:00
Dean Herbert
bca1be0bfa Add failing test 2019-11-13 18:54:33 +09:00
Huo Yaoyuan
42a98c5d87 Use constants. 2019-11-12 20:07:01 +08:00
Huo Yaoyuan
d60493a961 Use discards. 2019-11-12 20:03:21 +08:00
Huo Yaoyuan
e9b8cbb516 Apply other styles. 2019-11-11 20:27:04 +08:00
Huo Yaoyuan
ccc8aa6fa4 Apply brace style. 2019-11-11 20:13:13 +08:00
Ganendra Afrasya
8da15f6897 Fix all score are highlighted on local scope 2019-11-01 23:19:15 +07:00
Ganendra Afrasya
ce3b34a768 Fix UserTopScoreContainer is also tinted 2019-11-01 23:00:55 +07:00
Bartłomiej Dach
c181edaedf Replace manual comparer implementation
Replace manually-implemented CriteriaComparer with a call to
Comparer<T>.Create() to decrease verbosity.
2019-10-28 15:07:36 +01:00
Bartłomiej Dach
c8d3dd0e5a Make carousel item sorting stable
Migrate beatmap carousel item sorting from List<T>.Sort()
to IEnumerable<T>.OrderBy(), as the second variant is documented to be
a stable sorting algorithm. This allows for eliminating unnecessary
movement of carousel items occurring whenever any set of items is tied
when changing sorting criteria.
2019-10-27 23:14:14 +01:00
Joehu
f7924d3bad Rename "FixedSearchTextBox" to "SeekLimitedSearchTextBox" 2019-10-21 16:00:09 -07:00
Joehu
e5b50b5e1f Fix slider bar regression when using arrows 2019-10-17 13:54:36 -07:00
Joehu
649951198e Make most textbox carets movable 2019-10-15 14:47:48 -07:00
Joehu
ccc753a315 Make OverlayContainers with no blocking input VisibilityContainers 2019-10-14 16:27:59 -07:00
Dan Balasescu
26a33bfa4e
Merge branch 'master' into fix-resume-from-player-audio 2019-10-11 19:21:14 +09:00
Dan Balasescu
d4282473c6
Merge branch 'master' into fix-background-disposal 2019-10-11 17:15:30 +09:00
Dean Herbert
5eba33e876 Simplify logic and add test coverage for remaining case 2019-10-10 20:12:47 +09:00
Dean Herbert
e66f9adb86 Fix user pause not being cancelled when playing audio 2019-10-10 16:53:03 +09:00
Dean Herbert
f74c79c2b8 Fix audio playback position being reset after resuming to song select 2019-10-10 11:58:43 +09:00
Dan Balasescu
69b9e359bf
Merge branch 'master' into fix-ss-track-playback 2019-10-09 12:26:07 +09:00
Dean Herbert
4e026b163c Don't resume playback when user has paused and track hasn't changed 2019-10-08 15:04:38 +09:00
Dean Herbert
e7fc5e556c Fix song select not correctly playing tracks in some cases 2019-10-08 11:06:07 +09:00
Dean Herbert
bb161222ef
Merge branch 'master' into fix-tab-controls-overflowing 2019-10-08 10:12:03 +09:00
Joehu
9fdbe58326 Fix dropdown header padding when selected mod filter is hidden 2019-10-07 16:17:58 -07:00
Joehu
8e6e90eaec Use fixed numbers for padding instead 2019-10-07 16:11:40 -07:00
Dean Herbert
f15953d65c Fix carousel including filtered difficulties in sort comparisons 2019-10-07 15:17:03 +09:00
Joehu
11d937beab Fix beatmap detail area tab dropdown being blocked by content 2019-10-06 10:24:33 -07:00
Joehu
38c1cee5fd Fix tab controls overflowing 2019-10-06 10:22:55 -07:00
Joehu
e257f4ca04 Resume music to same position when exiting gameplay 2019-10-05 10:31:44 -07:00
Joehu
a71db11ea5 Remove depth parameter description 2019-10-04 18:38:44 -07:00
Joehu
5d460eaf6b Remove depth specification and button order regression 2019-10-04 17:14:19 -07:00
Joehu
e7ba6ef5c4 Fix keybinding order of beatmap options 2019-10-04 14:32:43 -07:00
Dean Herbert
d2c9a29c0d Remove unnecessary local assign 2019-10-04 10:45:18 +08:00
smoogipoo
a5e1cb8feb Merge remote-tracking branch 'Game4all/master' into truncate-metadata-on-wedge 2019-10-04 11:21:33 +09:00
Joehu
5f700f2ae9 Simplify exit logic of screens with textboxes using back button receptor 2019-10-01 08:26:34 -07:00
iiSaLMaN
fb9f21237e Reset track adjustments on resuming from another screen 2019-09-28 04:18:16 +03:00
Joehu
102dbd85bd Fix CI errors 2019-09-24 16:48:22 -07:00
Joehu
9861b21440 Remove unnecessary padding/margin 2019-09-24 16:28:40 -07:00
Joehu
7fab1a4337 Truncate long metadata on beatmap info wedge 2019-09-24 16:06:33 -07:00
Dean Herbert
4a59e3351e Update beatmap carousel tests code style
Also fixes one issue I spotted in BeatmapCarousel related to incorrectly holding a selection after new sets are loaded.
2019-09-25 02:42:12 +09:00
Bartłomiej Dach
96c0c80dc5 Factor out methods in FilterQueryParser
Factor FilterQueryParser.ApplyQueries into shorter methods to reduce
method complexity.
2019-09-22 21:20:50 +02:00
Bartłomiej Dach
70842f71f4 Fix floating point handling in filter intervals
Due to floating-point rounding and representation errors, filters could
wrongly display results incongruous with the wedge display text (ie.
a beatmap with the BPM of 139.99999 would be displayed as having 140
BPM and also pass the bpm<140 filter).

Apply tolerance when parsing floating-point constraints. The tolerance
chosen is half of what the UI displays for the particular values (so
for example half of 0.1 for AR/DR/CS, 0.01 for stars, etc.)

Tests updated accordingly.
2019-09-22 00:20:55 +02:00
Bartłomiej Dach
b262ba13cd Add creator= and artist= filters
To match stable, add creator= and artist= filters to the beatmap
carousel on song select screen. Contrary to stable, this implementation
supports phrase queries with spaces within using double quotes.

The quote handling is not entirely correct (can't nest), but quotes
should rarely happen within names, and it is an edge case of an edge
case - leaving best-effort as is. Test coverage also included.
2019-09-22 00:20:55 +02:00
Bartłomiej Dach
f5f5094611 Take culture into account when parsing filters
Culture was not taken into account when parsing filters, which meant
that in cultures that use the comma (,) as a decimal delimiter, it would
conflict with the comma used to delimit search criteria. To remove
any ambiguity, introduce local helper functions that allow the decimal
point to be utilised, using the invariant culture. This also matches
stable behaviour.

The decision to not reuse osu.Game.Beatmaps.Formats.Parsing was
deliberate due to differing semantics (it's not really sane to throw
exceptions on receiving user-facing input).
2019-09-22 00:18:53 +02:00
Bartłomiej Dach
dddd94684b Split out lower and upper interval inclusivity
A single IsInclusive field causes unexpected issues when trying to
formulate a half-open interval query. Split out IsInclusive into two
fields, Is{Lower,Upper}Inclusive and update usages accordingly.
2019-09-22 00:18:28 +02:00
Bartłomiej Dach
33c51d5178 Extract parsing filter queries to class
For the sake of testability without having to spin up visual tests,
extract methods related to parsing filter queries from FilterControl
to a static FilterQueryParser class.
2019-09-22 00:18:28 +02:00
Revel
f7f9c0f7e0 Update BeatmapDetailAreaTabControl.cs 2019-09-19 15:47:32 -04:00
Dean Herbert
0a67d1db1b
Merge pull request #5355 from EVAST9919/songselect-best-user-score
Show personal best on song select
2019-09-19 21:17:23 +09:00
smoogipoo
94d3bcc612 Fix top score not being selectable 2019-09-19 20:47:33 +09:00
smoogipoo
5120d82ef8 Fix crash with multiple range criterias 2019-09-19 17:36:44 +09:00
smoogipoo
96ea507320 Reorder comparison for readability 2019-09-19 17:21:22 +09:00
smoogipoo
e075dd7ea8 Fix equals operator not working 2019-09-19 17:16:34 +09:00
smoogipoo
7683f7ff23 Make OnlineStatus use OptionalRange 2019-09-19 17:12:07 +09:00
smoogipoo
d7831d8f5d Use non-generic IComparable interface 2019-09-19 17:11:43 +09:00
smoogipoo
167bb9fcc1 Fix ugly casts 2019-09-19 17:11:28 +09:00
smoogipoo
0915a94470 Make BeatDivisor use OptionalRange 2019-09-19 16:53:27 +09:00
smoogipoo
3c21b68b73 Make OptionalRange generic 2019-09-19 16:51:57 +09:00
Dean Herbert
48ee95955b Remove unnecessary redirection 2019-09-19 15:45:08 +09:00
smoogipoo
c1daa187fe Reduce default tolerance 2019-09-19 15:44:14 +09:00