Jérémiah DÉCOMBE
6daa364779
adding setting to adjust blur of the background of the song select screen
2023-01-23 13:53:31 +01:00
Dean Herbert
e3932c077b
Merge pull request #22032 from frenzibyte/fix-potential-difficulty-failure-alt
...
Fix advanced statistics display potentially performing invalid difficulty calculation
2023-01-23 15:39:47 +09:00
Bartłomiej Dach
4a6f6300c5
Merge branch 'master' into fix-carousel-sort-change-after-play
2023-01-18 17:15:20 +01:00
Bartłomiej Dach
7ba448b13c
Update comment to match implementation
2023-01-18 17:12:57 +01:00
mk56-spn
0ac7cd7409
Expose star difficulty to wedge to allow updating starcounter and background colour internally.
2023-01-18 13:55:52 +01:00
Dean Herbert
3b27774561
Remove OnlineID
sort consideration
2023-01-18 19:21:02 +09:00
Dean Herbert
4ad79a8a0a
Move IsLoaded
check inside BeatmapCarousel
2023-01-18 12:00:47 +09:00
mk56-spn
92a755c5da
adjust colourbar to position itself in a more simple fashion
2023-01-17 22:16:59 +01:00
Bartłomiej Dach
6f11fbdeed
Merge branch 'master' into fix-carousel-sort-change-after-play
2023-01-17 20:46:06 +01:00
Dean Herbert
8e1002b744
Fix song select potentially operating on Carousel
before it is fully loaded
...
Should fix test failures like
https://github.com/ppy/osu/actions/runs/3939620830/jobs/6739690253 .
2023-01-18 01:56:18 +09:00
Dean Herbert
a9ac28b504
Add fallback sorts to CarouselBeatmapSet
to ensure stable sorting
2023-01-17 16:40:25 +09:00
Dean Herbert
ef35493864
Avoid need for weird null check by reordering initialisation process
2023-01-17 15:27:21 +09:00
mk56-spn
74b72e4ac0
Address issues that joehuu brought up
2023-01-16 22:46:18 +01:00
OliBomby
832d033777
Fix merge issues
2023-01-16 01:09:04 +01:00
OliBomby
ab6bf6e1dc
Merge remote-tracking branch 'upstream/master' into carousel
2023-01-16 00:27:56 +01:00
OliBomby
1c0a650575
Fix typo
2023-01-16 00:17:26 +01:00
OliBomby
87ee9ab813
Added custom menu items in DrawableCarouselBeatmap
2023-01-16 00:13:12 +01:00
mk56-spn
9a29c9ae26
remove hacky method to check if carousel is null
2023-01-15 15:32:53 +01:00
Dean Herbert
c5775aa452
Merge branch 'master' into song_select_nullability
2023-01-15 22:44:13 +09:00
Dean Herbert
4cf4a66858
Make MusicController
a required dependency of SongSelect
2023-01-15 22:43:30 +09:00
Dean Herbert
f7af5a8115
Revert some formatting changes
2023-01-15 22:39:00 +09:00
Dean Herbert
4906f37109
Merge pull request #22181 from frenzibyte/attempt-fix-song-select-test-failure
...
Fix intermittent failure in beatmap carousel tests
2023-01-15 02:35:36 +09:00
ansel
515ada6815
Remove CanBeNull
where it's no longer requered
2023-01-13 23:11:50 +03:00
ansel
a41a031909
Localise some notifications
2023-01-13 23:11:25 +03:00
Salman Ahmed
112cf403ec
Fix intermittent failure in certain beatmap carousel tests
2023-01-13 19:41:44 +03:00
mk56-spn
a6b6fb864e
Make carousel non nullable and ensure pre load usages of methods that reference it are protected against failure
2023-01-13 13:10:29 +01:00
mk56-spn
403ca05e5e
Enable nullability for song select
2023-01-13 00:52:14 +01:00
Bartłomiej Dach
aab84d50eb
Remove boxing overhead in CarouselItem
comparator
2023-01-10 18:35:06 +01:00
mk56-spn
880428046a
Fix margins on top right aligned elements.
2023-01-10 18:03:28 +01:00
mk56-spn
2a82f618ed
Add TODO for text margin const, added pertinent comments to known "issues"
2023-01-10 17:34:47 +01:00
mk56-spn
9afdfd7f06
small tweaks, container edge - effect addition..
2023-01-10 11:45:41 +01:00
mk56-spn
65c30d2c2e
Remove nullability disabling
2023-01-10 11:45:41 +01:00
mk56-spn
1698272eb8
Simplify passing data from BeatmapInfoWedgeV2.cs to subclass wedgeinfotext
2023-01-10 11:45:40 +01:00
mk56-spn
61caabaa8e
Add coloured star counter
2023-01-10 11:45:40 +01:00
mk56-spn
0199c19f74
Add a test scene and move colour bar to back and adjust positioning of it
2023-01-10 11:45:40 +01:00
mk56-spn
c646f8479b
Move stardifficulty logic to main BeatmapInfoWedge class instead of text subclass ( for use by background star rating colour bar )
2023-01-10 11:45:40 +01:00
mk56-spn
f561120295
Remove info labels, since they are no longer present in this component in thew new design
2023-01-10 11:45:40 +01:00
Dean Herbert
b7e845201f
Fix whitespace around Debug.Assert
2023-01-10 18:03:17 +09:00
Dean Herbert
d53dafa29f
Revert Debug.Assert
2023-01-10 17:52:28 +09:00
Dean Herbert
93038ce496
Use OfType
instead of forceful nullability
2023-01-10 17:52:21 +09:00
mk56-spn
6abbc7dc28
Further fix nullability
2023-01-09 20:59:28 +01:00
mk56-spn
69260ca3c3
remove unnecessary usages of nullable forgiveness, add asserts for debugging
2023-01-09 18:36:55 +01:00
mk56-spn
47fb467012
Remove nullable disabling in carousel
2023-01-08 19:02:48 +01:00
Dean Herbert
464f251c0c
Merge branch 'master' into beatmap-set-link-genre-language
2023-01-06 17:09:06 +08:00
Salman Ahmed
8f37e69dc4
Schedule difficulty calculation to avoid performing with incomplete state updates
2023-01-05 12:52:08 +03:00
Salman Ahmed
39221a52da
Fix advanced statistics display using decoupled ruleset bindable for difficulty calculation
2023-01-05 12:52:08 +03:00
Dean Herbert
beb3b96aca
Harden request equality checks
2023-01-04 01:44:00 +08:00
Dean Herbert
8f7ae0395a
Fix song select leaderboard potentially showing wrong scores on quick beatmap changes
...
Closes #22002 .
2023-01-03 00:55:09 +08:00
mk56-spn
680646d3a6
Make offsetting of bottom bar more readable
2022-12-29 12:02:08 +01:00
Joseph Madamba
494886ef92
Rename Text
to Metadata
2022-12-23 11:11:15 -08:00
Joseph Madamba
1d39e8d0ce
Refactor MetadataSection
to use generics and inheritance
2022-12-21 10:18:47 -08:00
mk56-spn
626f4b0dfd
fix test failures, improve button logic
2022-12-19 16:35:20 +01:00
MK56
878e2f24c4
Merge branch 'master' into footer_V2_implementation
2022-12-19 13:19:23 +01:00
mk56-spn
407b0a0ad3
Address issues from Joehuu review
2022-12-19 11:30:23 +01:00
ansel
b66409bd37
Perform rewind with right click only if cursor didn't leave the button
2022-12-05 23:38:45 +03:00
mk56-spn
7373d79ba6
Use OsuColour instead of hex for button accent colour
2022-12-02 19:16:25 +01:00
mk56-spn
c5bad816db
Add button colouring whilst corresponding overlay is present
2022-12-02 18:44:21 +01:00
mk56-spn
ea882f6874
Add disabled button dimming.
2022-12-01 22:31:14 +01:00
mk56-spn
55a21a75a4
Add hover lightening
2022-12-01 22:07:28 +01:00
mk56-spn
d7cea51551
Add functionality of Random button
2022-12-01 16:29:52 +01:00
mk56-spn
1530495e7c
Add button "accent" colour, bottom bar, icon, text
2022-12-01 15:34:09 +01:00
mk56-spn
774eb178a1
Add basic button design and footer button addition flow
2022-12-01 13:13:37 +01:00
mk56-spn
18b4317e99
Create Basic V2 footer and test
2022-12-01 11:57:50 +01:00
mk56-spn
0aba119056
Merge remote-tracking branch 'origin/RangeSlider_implementation' into RangeSlider_implementation
...
# Conflicts:
# osu.Game.Tests/Visual/SongSelect/TestSceneDifficultyRangeFilterControl.cs
# osu.Game/Screens/Select/DifficultyRangeFilterControl.cs
2022-11-27 10:40:29 +01:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
mk56-spn
92ed2ed4ef
Refactor star "DifficultyRangeFilterControl" into generic range slider class
2022-11-26 12:19:08 +01:00
Dean Herbert
de163b2bb5
Change song select to only allow volume adjusting if alt is held while scrolling
2022-11-22 19:48:55 +09:00
Dean Herbert
4a79141824
Merge pull request #21338 from RATCM/fix-leaderboard-filter
...
Match leaderboard filter behaviour to web
2022-11-21 14:01:55 +09:00
RATCM
f5fbb7c8de
Changed comments
2022-11-20 19:27:40 +01:00
RATCM
d20a357c0e
Fixed ordering bug
2022-11-20 19:24:51 +01:00
RATCM
9040dfbd4e
Match leaderboard filter behaviour to web
2022-11-20 17:39:46 +01:00
Bartłomiej Dach
7b274083d3
Fix phantom beatmap sets appearing on carousel after delete/update
...
Regressed in c40c70509e
.
As it turns out, `item.Item.Filtered.Value` is not the only condition
that should be checked to determine if a carousel item should be hidden
or not - `item.Item.State.Value != CarouselItemState.Collapsed` should
also be true. This was even available as the `item.Item.Visible`
convenience property, which is used in this commit.
Failing to check `item.Item.State.Value` led to setting non-zero alpha
on collapsed carousel items, leading to phantom beatmap sets appearing,
as the alpha was set in the entire carousel's `Update()` method, thus
firing every frame.
2022-11-20 10:08:34 +01:00
nanashi-1
4773979e52
add condition
2022-11-17 16:15:34 +08:00
Salman Ahmed
87b4fee10f
Remove leftover constant
2022-11-17 04:05:21 +03:00
Salman Ahmed
55beaf5d93
Revert buttons order change
2022-11-17 04:05:15 +03:00
Salman Ahmed
039ab83a46
Disable beatmap options button when none selected
2022-11-17 04:00:23 +03:00
Salman Ahmed
0e46614c57
Revert beatmap option button state changes
2022-11-17 03:57:01 +03:00
nanashi-1
5d8d8ffce5
fix naming
2022-11-16 10:09:51 +08:00
nanashi-1
55edd6c907
add space
2022-11-16 09:58:49 +08:00
nanashi-1
1fb8357e93
change disabledAlpha
from readonly
to const
2022-11-16 09:58:32 +08:00
nanashi-1
9101ad0cbd
fixed naming
2022-11-16 09:42:40 +08:00
nanashi-1
5973bb1956
AddButton now returns the button
2022-11-15 20:57:31 +08:00
nanashi-1
1186ed3e32
add disable
2022-11-15 20:56:18 +08:00
nanashi-1
e8d170e772
disable certain options when no beatmap is selected
2022-11-15 20:55:55 +08:00
Dean Herbert
1aa0e40f2f
Add "Component" prefix to lookup naming
2022-11-09 17:46:43 +09:00
Dean Herbert
e75c3b3f94
Rename SkinnableTarget
to GlobalSkinLookup
2022-11-09 17:46:43 +09:00
Dean Herbert
391840404d
Play exiting transition in both directions
2022-11-07 11:59:43 +09:00
Dean Herbert
c40c70509e
Improve song select transition to gameplay
2022-11-04 15:24:37 +09:00
Dean Herbert
20dd405c2b
Merge branch 'master' into maintain-common-mod-selection
2022-11-03 15:32:40 +09:00
Dean Herbert
d9d083752a
Clamp backwards index to total current items to fix edge case of item removal
2022-10-26 11:03:11 +09:00
Dean Herbert
cf3bf41b49
Harden and simplify logic to avoid weird issues
2022-10-25 18:57:15 +09:00
Dean Herbert
22ea9a8ab4
Add early return of carousel group has no items
2022-10-25 13:34:22 +09:00
Dean Herbert
2456a18bc1
Rewrite implementation to avoid duplicated LINQ returns
2022-10-25 12:48:17 +09:00
Endrik Tombak
5a118cfdc3
Merge branch 'master' of https://github.com/ppy/osu into carousel-perform-selection
...
Conflicts:
osu.Game.Tests/Visual/SongSelect/TestSceneBeatmapCarousel.cs
2022-10-24 21:40:48 +03:00
Salman Ahmed
01c65d3cc1
Remove seemingly unnecessary/leftover code
2022-10-14 02:16:36 +03:00
Salman Ahmed
964ed01abb
Add confirmation dialog for updating locally modified beatmaps
2022-10-13 02:40:15 +03:00
Dean Herbert
a44ba579c5
Fix beatmap update button not respecting user "prefer no video" setting
...
Closes #20701 .
2022-10-11 14:27:40 +09:00
Dean Herbert
d9f678d942
Change song select random key binding to not handle key repeat
2022-10-03 18:16:54 +09:00
Dean Herbert
5fc836d1f0
Apply NRT to BeatmapLeaderboard
/ MatchLeaderboard
2022-09-26 16:17:28 +09:00
Dean Herbert
32d56fe3a9
Use request cancellation and IsDisposed
guard instead of more Schedule
2022-09-26 16:02:33 +09:00
Dean Herbert
0fa5e1b28e
Fix intermittent leaderboard crash due to request finishing after drawable is disposed
2022-09-23 20:18:44 +09:00
Dean Herbert
5b73f24864
Fix outdated scores being held by BeatmapLeaderboard
after external beatmap switch
2022-09-21 15:21:32 +09:00
Dean Herbert
68c040175a
Ensure Leaderboard.Scores
is updated immediately via request flow
2022-09-20 17:02:57 +09:00
Dean Herbert
46db3ad96d
Move implementation to individual classes
2022-09-20 00:06:02 +09:00
Dean Herbert
4c4fdfd153
Provide scores directly to Player
instance rather than relying on DI
2022-09-16 18:15:17 +09:00
Dean Herbert
0227eddda1
Merge branch 'master' into gameplay-leaderboards
2022-09-16 15:44:58 +09:00
Dean Herbert
b4e6a20846
Fix song select status prefix matching no longer working
...
Regressed in #19275 due to weird logic.
Closes #20289 .
2022-09-14 12:59:05 +09:00
Dean Herbert
94693a4667
Fix oversight when making interface implementation explicit
2022-09-13 19:55:57 +09:00
Dean Herbert
6d167070f8
Add back DI leaderboard retrieval via bindable pathway
2022-09-13 18:45:11 +09:00
Dan Balasescu
3cfacb5e39
Merge pull request #20257 from peppy/update-button-show-login
...
Show login overlay when attempting to update a beatmap while logged out
2022-09-12 17:51:45 +09:00
Dan Balasescu
31225066a1
Merge pull request #19308 from frenzibyte/top-rank-badge-order
...
Fix best rank badge not handling legacy scores properly
2022-09-12 16:20:21 +09:00
Dean Herbert
94f8197e22
Show login overlay when attempting to update a beatmap while logged out
2022-09-12 16:15:14 +09:00
Salman Ahmed
95062c2cc8
Remove center origin specification to avoid single-frame layout issues
2022-09-09 19:42:58 +03:00
Salman Ahmed
dd10a06e3d
Merge branch 'master' into top-rank-badge-order
2022-09-09 19:38:44 +03:00
Dean Herbert
602ffebd54
Apply NRT and fix code style
2022-09-09 23:29:04 +09:00
Dean Herbert
d961b96897
Merge branch 'master' into search-filter
2022-09-09 23:25:54 +09:00
Dean Herbert
d463bd2f3f
Merge pull request #20130 from Exanc/master
...
Display 0 stars instead of infinity for the minimum star slider
2022-09-08 17:51:32 +09:00
Dean Herbert
d523a2ac33
Rename default value field and make private
2022-09-08 15:53:08 +09:00
Dean Herbert
9ead5e59d3
Fix incorrectly displaying minimum value in placeholder messaging
2022-09-08 15:51:15 +09:00
Dean Herbert
f3bda4e040
Fix weird edge case of nullability in CarouselRoot
...
A bit unfortunately, but it's what we get for having ctor level bindings..
2022-09-07 14:27:25 +09:00
Dean Herbert
e18b524f8e
Fix missing null checks on selectedBeatmap
fields in BeatmapCarousel
2022-09-07 14:12:35 +09:00
Dean Herbert
241d33d415
Apply NRT to BeatmapCarousel
2022-09-07 14:07:53 +09:00
Exanc
4ea7ca4c07
Slight tweak to the StarsSlider
...
- MinimumStarsSlider now shows "0" when at it's minimum
- Modified and NoResultsPlaceholder the tooltip to stay consistent with the changes
2022-09-05 00:09:20 +02:00
Dean Herbert
1524623624
Fix back-to-front filter logic
...
Was copied across from a place which was checking for `match` and
applied verbatim to a place that was `filter`. Which are polar
opposites.
2022-09-01 19:59:27 +09:00
Dean Herbert
82b9e1f0eb
Merge pull request #20011 from smoogipoo/scoring-refactor
...
Refactor scoring to remove async methods / simplify
2022-08-29 19:55:27 +09:00
Dan Balasescu
423f6f90f2
Remove async calls from ScoreManager
2022-08-29 15:34:08 +09:00
Salman Ahmed
a3e595a9aa
Update comment to include inserted indices
2022-08-26 14:51:19 +03:00
Salman Ahmed
81c0a641b4
Fix selection fallback path not updated to check inserted indices
2022-08-26 14:51:08 +03:00
Salman Ahmed
f38194fb40
Merge branch 'master' into carousel-maintain-selection-over-update
2022-08-26 14:35:19 +03:00
Dean Herbert
217fa00a72
Bring logic up-to-date
2022-08-26 19:32:49 +09:00
Dean Herbert
a146db0e35
Merge branch 'master' into carousel-perform-selection
2022-08-26 19:29:00 +09:00
Andrew Hong
55f1b43329
Removed check
2022-08-22 13:41:36 -04:00
Andrew Hong
bcab7aea26
Merge branch 'master' into add-date-created-sort
2022-08-22 04:02:46 -04:00
Andrew Hong
c2036d3893
Moved filter exclusion
2022-08-22 03:39:46 -04:00
Andrew Hong
09ef13908c
Adjust to reviews
2022-08-22 03:20:27 -04:00
Dan Balasescu
0815b01b75
Merge pull request #19783 from bdach/mod-select/presets-dont-open-customisation
...
Fix selecting preset containing Difficulty Adjust automatically opening customisation panel
2022-08-22 15:44:00 +09:00
Andrew Hong
c6a739f5a8
Add date submitted sorting
2022-08-21 23:09:33 -04:00
Dean Herbert
37799e3b31
Allow preparing preview point without looping
2022-08-17 13:20:24 +09:00
Dean Herbert
9d2c2b71cf
Change conditional to check for insertions in addition to modifications
...
It is possible that the import process itself marks the previous
beatmaps as deleted due to an overlap in metadata or otherwise.
2022-08-16 16:21:36 +09:00
Bartłomiej Dach
5ff2e41a55
Add preset column to mod select test scene
2022-08-15 18:38:37 +02:00
Dean Herbert
cbe5cb5d03
Merge branch 'master' into carousel-maintain-selection-over-update
2022-08-08 18:01:26 +09:00
Bartłomiej Dach
839409d7ac
Add preset column to solo mod select overlay
2022-08-07 16:20:31 +02:00
Bartłomiej Dach
a0d093be5c
Extract common implementation of delete dialog
2022-08-06 21:04:12 +02:00
Dean Herbert
c0e5f11c90
Merge pull request #19532 from frenzibyte/fix-new-items-sort-stability
...
Fix newly imported beatmaps not using correct comparer for sorting
2022-08-02 02:20:51 +09:00
Salman Ahmed
fc7fc3d673
Fix newly imported beatmaps not using correct comparer for sorting
2022-08-01 19:13:57 +03:00
Salman Ahmed
faefda9143
Fix song select not updating selected beatmap card on editor resume
2022-07-30 19:47:42 +03:00
Dean Herbert
ad482b8afc
Tidy up naming of collection dropdowns
2022-07-28 13:57:21 +09:00
Dean Herbert
67c7f324ee
Simplify CollectionFilterDropdown
filter flow weirdness
2022-07-28 13:57:21 +09:00
Dean Herbert
438067a18b
Convert realm data propagation to more correctly use Live<T>
...
wip
2022-07-27 19:35:09 +09:00
Dean Herbert
41393616d8
Replace BeatmapCollection
with RealmBeatmapCollection
2022-07-27 19:35:09 +09:00
Dean Herbert
9c543fef48
Remove CollectionManager
2022-07-27 18:45:33 +09:00
Dean Herbert
e6a3659581
Guard against NewModifiedIndices
being empty
2022-07-27 14:23:47 +09:00
Dean Herbert
24d75612e2
Always attempt to follow selection, even if difficulty name / metadata change
2022-07-27 14:18:53 +09:00
Dean Herbert
8105d4854a
Fix beatmap carousel not maintaining selection if currently selected beatmap is updated
2022-07-27 13:33:48 +09:00
Dan Balasescu
8f7dff5c2c
Merge pull request #19378 from peppy/beatmap-update-test
...
Add separate beatmap update flow to handle edge cases better
2022-07-26 18:49:20 +09:00
Salman Ahmed
a4f6f2b9eb
Make item ID comparer static
2022-07-26 09:55:37 +03:00
Dean Herbert
8370ca9765
Add ImportAsUpdate
method to IModelImporter
to avoid otehr changes
2022-07-26 15:49:04 +09:00
Salman Ahmed
693ac8750c
Remove remaining uses of "child" terminology in non-drawable components
2022-07-26 09:43:47 +03:00
Salman Ahmed
d7ef4170be
Maintain sort stability by using carousel item ID as fallback
2022-07-26 09:40:41 +03:00
Dean Herbert
b7f6413bce
Fix old version of beatmap potentially not being deleted during update flow
...
This can happen if the online IDs are not present in the `.osu` files.
Previously this was only working due to the early logic in the import
process (that relies on matching all online IDs perfectly).
2022-07-25 19:51:19 +09:00
solstice23
aaad2e474c
Refactor the multiple regex checks in criteria parsing
2022-07-23 21:43:27 +08:00
solstice23
63210d5662
Merge branch 'master' into search-filter
2022-07-23 18:13:53 +08:00
solstice23
3f2c341369
Simplify length parsing
2022-07-23 18:13:19 +08:00
Salman Ahmed
3aecd288e2
Enable NRT on TopLocalRank
2022-07-23 09:27:03 +03:00
Salman Ahmed
1d0306810a
Fix TopLocalRank
not handling legacy scores properly
2022-07-23 09:24:38 +03:00
Salman Ahmed
727fe76b60
Fix TopLocalRank
hacking around presence to hide on null rank
...
Fixed this here because that blocks `Schedule` from running, and I don't
want to add another override to the `IsPresent` flag.
2022-07-23 09:22:22 +03:00
solstice23
7c222505e9
Simplify length parsing
2022-07-22 14:24:17 +08:00
Salman Ahmed
3b913bb9ad
Fix sorting mode not filling up to usable area in filter control
2022-07-22 09:15:48 +03:00
solstice23
b36e23c0da
Simplify the regex expression
2022-07-22 03:30:31 +08:00
solstice23
ae0902ca86
Fix lax in search criteria parsing
2022-07-22 02:55:11 +08:00
solstice23
0dcb3644f5
Merge branch 'master' into search-filter
2022-07-22 01:32:25 +08:00
solstice23
6baaef432f
Add colon parsing support in search length criteria
2022-07-21 18:49:13 +08:00
solstice23
a5a8fac66f
Add multiple units support in search length criteria
2022-07-21 18:24:31 +08:00
Dean Herbert
fc0c9f76bd
Fix UpdateBeatmapSetButton
intermittent test failure
...
Carousel would only expire items when off-screen. This meant that for a
case (like a test) where items are generally always on-screen,
`UpdateBeatmapSet` calls would result in panels remaining hidden but not
cleaned up.
2022-07-21 16:24:48 +09:00
Dean Herbert
3cfe624af1
Fix one more missed method with incorrect terminology
2022-07-21 16:16:41 +09:00
Dean Herbert
a05d7f4d8c
Change carousel terminology to not use Children
/ InternalChildren
2022-07-21 16:06:06 +09:00
Dan Balasescu
7dfc18a0e3
Merge pull request #19208 from frenzibyte/remove-score-multiplier-on-custom-mod-settings
...
Remove score multiplier on difficulty-increasing mods with customised settings
2022-07-20 20:12:59 +09:00
Dan Balasescu
2b399ec7ad
Merge branch 'master' into date-submitted-ranked
2022-07-20 18:36:57 +09:00
Dan Balasescu
de29078db2
Remove nullable disables
2022-07-20 15:16:40 +09:00
Dean Herbert
30daa0fd44
Add ranked and submitted date storage and filtering
2022-07-19 19:55:56 +09:00
Dean Herbert
17046b0553
Add basic handling of download failures
2022-07-19 19:01:23 +09:00
Dean Herbert
a16bf35581
Rename button class and add basic progress display
2022-07-19 18:29:36 +09:00
Dean Herbert
da360af15a
Fix vertical centering of button
2022-07-19 18:29:36 +09:00
Dean Herbert
eaf4f6dbb7
Add beatmap update button
2022-07-19 18:29:36 +09:00
Salman Ahmed
e86a35fe33
Fix NRE on footer button mods
2022-07-18 10:09:14 +03:00
Salman Ahmed
eddae7b143
Fix mod overlay and footer not updating multiplayer on settings change
2022-07-18 07:38:56 +03:00
Salman Ahmed
838e9ec12e
Merge branch 'master' into placeholder-fixes
2022-07-15 20:22:25 +03:00
Dean Herbert
cf38b15332
Merge pull request #19124 from frenzibyte/song-select-metadata-search
...
Change clicking source/tags on song select to filter instead of searching online
2022-07-15 19:16:31 +09:00
Dean Herbert
e12e480393
Only expose bindable string rather than full textbox
2022-07-15 18:01:35 +09:00
Dean Herbert
ba0a158740
Show search online prompt even when no beatmaps are available locally
2022-07-15 17:50:10 +09:00
Dan Balasescu
c1dd1cfead
Merge pull request #19082 from peppy/api-solo-score-model
...
Add and consume `SoloScoreInfo`
2022-07-15 15:20:18 +09:00
Salman Ahmed
86d019c2b2
Enable NRT on BeatmapDetails
2022-07-15 06:52:06 +03:00
Salman Ahmed
97c3eea3aa
Fix beatmap details source and tags not filtering on song select
2022-07-15 06:51:50 +03:00
Salman Ahmed
102d0415f1
Merge branch 'master' into drawable-playlist-item-collection
2022-07-14 00:10:49 +03:00
Dan Balasescu
7ed05277f8
Merge pull request #19098 from peppy/last-played
...
Add "last played" sort mode to song select
2022-07-13 22:44:50 +09:00
Dean Herbert
6950223a7d
Fix drawable mutation from disposal thread
2022-07-13 19:19:14 +09:00
Dean Herbert
fc274629f8
Add "last played" sort mode to song select
...
Note that this will consider the most recent play of any beatmap in
beatmap set groups for now, similar to other sort methods.
2022-07-13 16:43:43 +09:00
Dean Herbert
f956955d4d
Combine ScoreInfo
construction helper methods
2022-07-12 18:00:25 +09:00
Salman Ahmed
a94fb62be3
Split collection toggle menu item to own class
2022-07-08 01:39:45 +03:00
Dean Herbert
e1b434b5dc
Fix song select placeholder not showing convert hint for custom rulesets
2022-07-07 14:46:51 +09:00
Dan Balasescu
9bf91835b6
Merge pull request #18962 from peppy/slider-range-control
...
Move star difficulty filter to song select
2022-07-03 21:58:00 +09:00
Dan Balasescu
724fd19038
Remove nullable disables
2022-07-03 21:15:13 +09:00
Dean Herbert
052a786eff
Only show hover effect on one nub at a time
2022-07-03 03:06:03 +09:00
Dean Herbert
7d8ea5e286
Remove unnecessary proxying
2022-07-03 02:59:10 +09:00
Dean Herbert
a03abc747b
Tidy up comments and simplify bounding box centre logic
2022-07-02 12:58:34 +09:00
Dean Herbert
1fd9c64803
Change song select FooterButton
sound
2022-07-02 12:48:33 +09:00
Dean Herbert
b829884861
Merge pull request #18963 from peppy/more-placeholder-suggestions
...
Add difficulty filter reset to song select "no results" suggestions
2022-07-01 17:55:23 +09:00
Dean Herbert
58e25a3a01
Fix potential crash in BeatmapLeaderboard
during rapid refresh operations
2022-07-01 15:42:35 +09:00
Dean Herbert
3e0f4e7609
Add test coverage of difficulty filter reset
2022-07-01 15:28:55 +09:00
Dean Herbert
f3af612133
Suggest removing difficulty filter if no matches found at song select
2022-07-01 15:18:04 +09:00
Dean Herbert
545df0a8e8
Display difficulty on nub
2022-07-01 15:17:26 +09:00
Dean Herbert
cb9947b1c9
Align song select components a bit better
2022-07-01 15:17:12 +09:00
Dean Herbert
32139ac13f
Tidy up implementation and add basic visual test
2022-07-01 15:16:58 +09:00
Dean Herbert
d54f7fc728
Move slider range control to song select
2022-07-01 14:41:36 +09:00
Dan Balasescu
d43b980a17
Merge pull request #18872 from peppy/add-working-beatmap-changed-logging
...
Add various logging of global `WorkingBeatmap` state changes
2022-06-27 21:34:05 +09:00
Dean Herbert
aa7d54f8b6
Add logging for various cases of SongSelect.FinaliseSelection
being aborted
2022-06-27 20:10:17 +09:00
Dean Herbert
50c1c066de
Add various logging of global WorkingBeatmap
state changes
2022-06-27 18:41:31 +09:00
Dean Herbert
31a447fda0
Update parameter discards
2022-06-24 21:26:19 +09:00
Dean Herbert
30eebf3511
Merge branch 'master' into c-sharp-10
2022-06-24 21:22:33 +09:00
Bartłomiej Dach
26c5b59f6d
Replace usages of string.To{Lower,Upper}()
2022-06-24 11:57:45 +02:00
Dean Herbert
f71f6302fd
Remove unnecessary null
casts
2022-06-24 14:50:11 +09:00
Dean Herbert
28837693e5
Nuke calculating everything
...
The whole component is pointless so I'm just going to nuke for now I
guess. Kind of makes the whole refactor effort pointless but oh well?
To expand on this, the implementation was actually incorrect as pointed
out at https://github.com/ppy/osu/pull/18819#pullrequestreview-1017886035 .
2022-06-24 14:24:06 +09:00
Dean Herbert
01da6f20b3
Tidy up all remaining usages
2022-06-23 19:27:35 +09:00
Dean Herbert
7dec530ca5
Split out simple DifficultyIcon
with no calculation overhead and update usages
2022-06-23 19:27:35 +09:00
Bartłomiej Dach
93b3ede2a0
Always use beatmap ruleset in editor gameplay test mode
...
Fixes cases where opening a convertible beatmap (so any osu! beatmap)
with the game-global ruleset being set to anything but osu! would result
in opening the editor gameplay test mode with the game-global ruleset
rather than the beatmap's.
2022-06-19 19:30:40 +02:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Dan Balasescu
c9dfffbc0e
Merge pull request #18619 from peppy/fix-collection-performance
...
Fix performance overhead of large collections
2022-06-10 15:01:31 +09:00
Dean Herbert
4a5e86e451
Rename Beatmaps
to BeatmapHashes
for clarity
2022-06-10 14:03:51 +09:00
Dean Herbert
187086e4ec
Merge pull request #18609 from ALANVF/settings-delete-skin
...
Add button to delete the current skin
2022-06-08 19:18:59 +09:00
Dean Herbert
42cd7d9e6e
Change CollectionManager
to only store MD5 hashes instead of full BeatmapInfo
2022-06-08 18:23:09 +09:00
Dan Balasescu
f8594acb1d
Cleanup dialog implementation
2022-06-08 18:17:43 +09:00
Dan Balasescu
3a90aa0b9b
Fix code styling
2022-06-08 17:57:59 +09:00
Dan Balasescu
c43670fcd9
Merge pull request #18603 from peppy/fix-import-dialog
...
Add placeholder when no results are visible at song select
2022-06-08 15:22:31 +09:00
theangryepicbanana
6c05329144
Close #5820 (Ability to delete a single skin)
2022-06-07 18:01:40 -04:00
Dean Herbert
228683e956
Fix nullability of dialogOverlay
dependency
2022-06-07 23:48:34 +09:00
Dean Herbert
2e0b888410
Fix song select carousel invalidating every frame during global overlay dimming
2022-06-07 23:46:53 +09:00
Dean Herbert
f8524c3af4
Use VisibilityContainer
to avoid too many animations triggering
2022-06-07 17:25:06 +09:00
Dean Herbert
a04af1ca5f
Enable nullable and add hinting at convert filter criteria
2022-06-07 17:25:06 +09:00
Dean Herbert
0d32c94104
Add initial implementation of beatmap carousel no-results-placeholder
2022-06-07 17:25:06 +09:00
Dean Herbert
df9174ec00
Remove import popup dialog from song select
...
This has been replaced in spirit by the first run overlay.
2022-06-07 16:45:27 +09:00
Joseph Madamba
4b54fedd88
Add back hide common string using new ToSentence()
extension method
2022-06-03 20:09:20 -07:00
Joseph Madamba
b342aad24a
Revert/fix some incorrectly used sorting localisation
2022-06-03 19:56:33 -07:00
Jamie Taylor
6115275bc2
Use 'default' sampleset for toolbar and repurpose 'toolbar' select sample temporarily
2022-06-03 22:33:06 +09:00
Jamie Taylor
365819865e
Remove 'submit' sample usages
2022-06-03 22:31:35 +09:00
Salman Ahmed
84a3cee452
Apply rate multiplier outside BPM rounding
2022-05-20 18:04:12 +03:00
Salman Ahmed
596853da8f
Fix song select potentially displaying BPM range with equal min/max values
2022-05-20 17:53:28 +03:00
Bartłomiej Dach
76c63f1d0a
Rename ModSelect{Screen -> Overlay}
in place of removed old design
2022-05-10 22:56:50 +02:00
Dean Herbert
0d32bf91eb
Hardcode hide key handling in ModSelectScreen
2022-05-08 01:35:11 +09:00
Bartłomiej Dach
34cf4c6a38
Fix mod overlay not closing on toggle hotkey
2022-05-05 22:16:56 +02:00
Bartłomiej Dach
0caea77176
Fix mod selects not hiding when their owner screens exit
2022-05-05 22:16:55 +02:00
Bartłomiej Dach
a56eab2c47
Extract interface for overlay management
2022-05-05 22:16:55 +02:00
Bartłomiej Dach
4eefbd5bc2
Use new free mod select design in room creation flow
2022-05-05 22:16:54 +02:00
Bartłomiej Dach
1744d7e4f0
Fix new mod select overlay dimming itself
2022-05-05 22:16:54 +02:00
Bartłomiej Dach
407db7ff9d
Replace old mod select overlay with new design
2022-05-05 22:16:54 +02:00
Salman Ahmed
9416346c94
Globalise beatmap selection key bindings as "group" selection
2022-05-04 16:46:32 +03:00
Salman Ahmed
d52a1a5d23
Add key binding for beatmap selection in song select
2022-05-04 03:52:10 +03:00
Salman Ahmed
18852b2509
Fix footer random button autosizing to text length
2022-05-02 15:36:22 +03:00
Dean Herbert
5c04ab18ec
Merge pull request #18011 from frenzibyte/rewind-shift-click
...
Allow rewinding random in song select with "Shift + Left Click"
2022-04-29 23:10:29 +09:00
Salman Ahmed
856ca96b66
Allow right-clicking to rewind on random button
2022-04-29 10:12:24 +03:00
Salman Ahmed
a9d67d3e92
Change random button text when holding shift key
2022-04-29 10:10:21 +03:00
Salman Ahmed
7e3d1511c6
Hide "Rank Achieved" sorting mode until it's supported
2022-04-29 07:47:10 +03:00
Salman Ahmed
fa5c05120c
Allow rewinding random in song select with Shift + Left Click
2022-04-28 20:06:27 +03:00
Dean Herbert
07462384e8
Merge pull request #17930 from peppy/fix-song-select-music-control
...
Fix nested song select in first-run dialog fiddling with global audio
2022-04-24 19:18:27 +09:00
Dean Herbert
999b4505d1
Remove localisation of "hide" string to fix incorrect case
2022-04-24 16:37:11 +09:00
Dean Herbert
bcdd1fb183
Fix nested song select in first-run dialog fiddling with global audio
2022-04-22 18:37:40 +09:00
Dean Herbert
832d37b2c2
Update screen transition events to use new event args
2022-04-22 00:52:44 +09:00
Joseph Madamba
5e5c8e78a6
Use existing web localisation for most hardcoded strings
2022-04-20 16:31:11 -07:00
Dean Herbert
043599081b
Split out INotificationOverlay
to allow for easier testing
2022-04-18 20:14:01 +09:00
Dean Herbert
e315313266
Split out IDialogOverlay
to allow for easier testing
2022-04-18 18:36:26 +09:00
Dean Herbert
3ca365ad7f
Merge branch 'master' into dangerous-delete-actions
2022-04-05 10:55:01 +09:00
Ame
32c89f8643
Handle repeated OnPressed()
on FooterButton
(without FooterButtonRandom
)
2022-04-05 00:33:41 +02:00
CenTdemeern1
9a07a95d39
Make several delete confirmation buttons dangerous buttons
...
Includes:
- Mass deletion
- Beatmap deletion
- Local score deletion
2022-04-04 19:22:53 +02:00
Bartłomiej Dach
436dec68c9
Use provided extension method instead of reimplementing locally
2022-03-30 22:04:54 +02:00
Bartłomiej Dach
9621a7f9cb
Merge branch 'master' into fix-autoplay-mod-user-id
2022-03-30 21:41:45 +02:00
Dan Balasescu
cb1ee05539
Merge pull request #17555 from peppy/remove-source-from-wedge
...
Remove song source from main wedge display
2022-03-30 18:57:25 +09:00
Dean Herbert
f9f6248101
Simplify string bindings
2022-03-30 17:59:45 +09:00
Dean Herbert
bc0b982102
Remove song source from main wedge display
...
This was definitely added at someone's request, since I wouldn't have
put it here. But it's displayed below in the details section already and
also not displayed in the updated "wedge" in the new design.
See https://github.com/ppy/osu/discussions/17537 for discussion.
2022-03-30 17:59:40 +09:00
Salman Ahmed
cef1b93471
Improve behaviour of "Autoplay" shortcut during gameplay start
...
This also opens up the way to adding shortcut for "Cinema" mod
(Ctrl+Shift+Enter), but will leave adding that until there's a demand
for it.
2022-03-30 01:07:48 +03:00
Dean Herbert
ea9495eb74
Update all existing calls to extension method with correct fallback handling
2022-03-29 16:51:30 +09:00
Dean Herbert
c6aa32a003
Add basic song select setup for skinnability
2022-03-16 19:12:06 +09:00
Dan Balasescu
2de7795844
Fix always rolling up from zero
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
2022-03-10 19:59:05 +09:00
Dan Balasescu
671d614c92
Fix beatmap wedge mutating transforms incorrectly
2022-03-10 17:54:33 +09:00
Dean Herbert
520d2d6cfa
Fix beatmap carousel panels accepting input while marked as not-visible
...
This is an issue as carousel panels manage their own animated state. If
they are marked as not-visible (done at a higher level, from filtering
or update pathways) but clicked while fading out, they will animate back
to a visible state but not be marked as visible.
No tests for this one as it's probably not worthwhile to test (and hard
to do so). Manual testing can be done with the following patch:
```diff
diff --git a/osu.Game/Screens/Select/BeatmapCarousel.cs
b/osu.Game/Screens/Select/BeatmapCarousel.cs
index c3d340ac61..3372242acc 100644
--- a/osu.Game/Screens/Select/BeatmapCarousel.cs
+++ b/osu.Game/Screens/Select/BeatmapCarousel.cs
@@ -255,7 +255,7 @@ private void
beatmapSetsChanged(IRealmCollection<BeatmapSetInfo> sender, ChangeS
}
foreach (int i in changes.NewModifiedIndices)
- UpdateBeatmapSet(sender[i].Detach());
+ Scheduler.AddDelayed(() =>
UpdateBeatmapSet(sender[i].Detach()), 100, true);
foreach (int i in changes.InsertedIndices)
UpdateBeatmapSet(sender[i].Detach());
```
- Enter gameplay and adjust beatmap offset then return to song select
and click the flashing panel.
OR
- Enter editor and save then return to song select and click the
flashing panel.
Closes https://github.com/ppy/osu/discussions/17171 .
2022-03-09 16:08:52 +09:00
Dean Herbert
622ec53130
Fix BeatmapLeaderboard
refreshing on unrelated changes to a beatmap
2022-03-08 14:50:47 +09:00
Dean Herbert
da29947ecd
Disallow interaction with carousel set difficulty icons unless selected
...
I kinda liked this flow, but from multiple reports from users it
definitely seems in the way. We can revisit after the new design is
applied to song select.
Note that this means the tooltips also don't display. If it is preferred
that they should (arguable from a UX perspective, since I'd expect to be
able to click at that point) then the issue can be addressed using a
slightly different path (a few more lines - nothing too complex).
2022-03-07 11:34:08 +09:00
Dean Herbert
42e07b7308
Convert to extension method to avoid recursive calls
2022-03-03 14:15:37 +09:00
Dean Herbert
fab9323707
Replace all legacy ruleset checks with a helper property call
2022-03-03 14:08:48 +09:00
Dean Herbert
c342030b2c
Add specific placeholder message for custom rulesets rather than showing network error
2022-03-02 14:10:59 +09:00
Dean Herbert
7307e68e9c
Revert "Merge pull request #16889 from smoogipoo/remove-mod-multiplier"
...
This reverts commit 252b945d3b
, reversing
changes made to a1b39a96cf
.
2022-02-17 13:26:12 +09:00
Dan Balasescu
5dd9771c5f
Remove mod multipliers from being applied to scores
2022-02-16 16:27:27 +09:00
Salman Ahmed
6f0e32826c
Standardise ordering/grouping of IRulesetInfo
/RulesetInfo
s
2022-02-11 04:27:11 +03:00
Dean Herbert
eb25730b61
Revert "Merge pull request #16716 from peppy/carousel-less-invalidations"
...
This reverts commit 8d13e0514b
, reversing
changes made to 95582a9023
.
2022-02-05 16:12:58 +09:00
Jamie Taylor
0f48c0131c
Layer playback of beatmap-changed and random-beatmap samples
2022-02-04 19:57:54 +09:00
Dean Herbert
6d6327d3da
Fix test beatmap loading potentially performing selection before carousel itself is loaded
2022-02-03 18:40:16 +09:00
Dean Herbert
e65996efc3
Rename variable to match purpose better
2022-02-03 17:14:38 +09:00
Dean Herbert
4f3e55a0ce
Merge branch 'master' into songselect-random-sfx
2022-02-02 17:18:24 +09:00
Dean Herbert
6bc6675fa1
Adjust fade in times slightly
2022-01-31 14:46:20 +09:00
Dean Herbert
8917ab78f4
Reduce unnecessary container nesting and adjust empty state opacity slightly
2022-01-31 14:46:20 +09:00
Dean Herbert
2ee0db0ebf
Move fade in function local
2022-01-31 14:46:20 +09:00
Dean Herbert
c3e3b2019d
Reduce overhead of ApplyState
by tracking previous values
...
Even with pooling applied, there are overheads involved with transforms
when quickly cycling through the carousel.
The main goal here is to reduce the transforms in cases the reuse is
still in the same state. Avoiding firing `FadeIn` and `FadeOut` are the
main areas of saving.
2022-01-31 14:46:20 +09:00
Dean Herbert
a06287e76a
Remove DrawableCarouselItem.Update
updating of height
...
Marginal from a performance aspect, but reads better.
2022-01-31 14:46:20 +09:00
Dean Herbert
9c9fda84f3
Add schedule and cancellation check to score ordering step
2022-01-31 13:50:53 +09:00
Dean Herbert
f8939af5e6
Track loading via state as well
2022-01-31 01:12:03 +09:00
Dean Herbert
acc1199add
Consolidate flows of Set
operations, either result or error
2022-01-30 16:16:00 +09:00
Dean Herbert
c401629dd8
Also refactor placeholder
logic to make more sense
2022-01-30 10:50:32 +09:00
Dean Herbert
d0b74a91fb
Fix edge cases with score drawable loading
2022-01-29 23:58:57 +09:00
Dean Herbert
0293d95f82
Simplify IsOnlineScope
usage
2022-01-29 23:58:57 +09:00
Dean Herbert
daea13f491
Simplify flow of cancellation token
2022-01-29 23:58:57 +09:00
Dean Herbert
3d59bab7c6
Remove fetch callback logic completely
2022-01-29 23:58:57 +09:00
Dean Herbert
aee93934d5
Rename methods to make more sense (and always run through AddOnce
)
2022-01-29 23:58:57 +09:00
Dean Herbert
e7823982d8
Fix ruleset value not being transferred when FinaliseSelection
is not called
2022-01-29 18:44:48 +09:00
Dan Balasescu
f021a274d2
Merge pull request #16681 from peppy/fix-delete-local-scores
...
Fix delete local scores via "Clear all scores" button crashing the game
2022-01-28 17:01:31 +09:00
Dean Herbert
0d3ac4fd9c
Fix delete local scores crashing the game
2022-01-28 15:54:53 +09:00
Dean Herbert
b7d8c9bf06
Fix a couple of cases of incorrect equality checks in the case both values are null
2022-01-28 14:29:56 +09:00
Jamie Taylor
f59828e2d9
Add audio feedback to song select 'random'
2022-01-28 13:43:37 +09:00
Bartłomiej Dach
04d6ca59a3
Merge branch 'master' into song-select-scroll-position-during-delete
2022-01-27 20:46:19 +01:00
Dean Herbert
7af23328a4
Merge branch 'master' into ruleset-ordering-fix
2022-01-27 21:46:03 +09:00
Dean Herbert
3ae5973ab7
Fix compilation error due to commit split
2022-01-27 17:08:31 +09:00
Dean Herbert
449e9bcf5c
Ensure beatmap carousel scroll position is maintained during deletion operations
2022-01-27 16:52:02 +09:00
Dean Herbert
0a45aa80cb
Remove unnecessary double-schedule in UpdateBeatmapSet
2022-01-27 16:52:02 +09:00
Dean Herbert
5637fd64d6
Perform ordering using IComparable
instead
2022-01-27 15:59:20 +09:00
Dean Herbert
5288eedd31
Update all usages of RulesetID
and Ruleset.ID
to use Ruleset.OnlineID
2022-01-27 15:38:03 +09:00
Dean Herbert
f30d63107a
Add SortID
to RulesetInfo
to allow stable ordering of rulesets for display
2022-01-27 15:35:16 +09:00
Dean Herbert
f70e10e8a4
Fix ruleset filter matching using OnlineID
instead of ShortName
2022-01-27 01:25:57 +09:00
Derrick Timmermans
873d367615
Fix custom rulesets not being able to convert maps
2022-01-26 15:51:39 +01:00
Dean Herbert
473c4d00ca
Fix grouped difficulty icons using incorrect lookup for ruleset grouping
2022-01-26 18:38:44 +09:00
Dean Herbert
d7342880f5
Update remaining cases of clashes with realm.Write
and realm.RegisterForNotifications
2022-01-25 13:09:48 +09:00
Dean Herbert
e23b10e6a5
Update remaining cases of clashing variable name in realm.Run(realm..
2022-01-25 13:04:05 +09:00
Dean Herbert
6eb2c28e41
Rename RealmContextFactory
to RealmAccess
2022-01-24 20:38:07 +09:00
Dean Herbert
40aa873190
Rename register methods to better explain their purpose
2022-01-24 14:37:36 +09:00
Dean Herbert
e9e3e024a1
Update all usages of QueryAsyncWithNotifications
to use new Register
pathway
2022-01-23 20:28:04 +09:00
Dean Herbert
61cef42be9
Proof of concept realm subscriptions via Register
2022-01-23 20:28:04 +09:00
Dean Herbert
1f157d729d
Update existing subscriptions to new style
...
Fix missing detach calls in `MusicController`
2022-01-21 20:05:03 +09:00
Dean Herbert
8f1dfa33a2
Merge branch 'master' into realm-context-use-update-when-feasible
2022-01-21 18:03:09 +09:00
Dean Herbert
114c9e8c1f
Update all usages of CreateContext
to use either Run
or Write
2022-01-21 17:27:08 +09:00
Dean Herbert
3bcdce128c
Use dictionary add for safety
2022-01-21 15:29:21 +09:00
Dean Herbert
ff4f40db8a
Merge branch 'master' into carousel-performance-n
2022-01-21 15:27:42 +09:00
Dan Balasescu
c4f24ef96c
Merge pull request #16542 from peppy/carousel-search-performance-less-simple
...
Avoid performing full filter when updating carousel beatmap sets
2022-01-21 15:05:30 +09:00
Dean Herbert
bed7b69464
Apply NRT to CarouselGroup
2022-01-21 13:26:29 +09:00
Dean Herbert
5b24800b0e
Avoid applying filter in UpdateBeatmapSet
flow
2022-01-21 13:26:25 +09:00
Dean Herbert
45bf35c425
Avoid performing keyword filtering at song select unless keywords are specified
2022-01-21 12:26:24 +09:00
Dean Herbert
ba31ddee01
Revert beatmapSets
reference to fix tests
...
New version changed order.
2022-01-21 00:34:12 +09:00
Dean Herbert
80f3a67876
Use for
instead of foreach
to avoid enumerator overhead
2022-01-20 22:21:00 +09:00
Dean Herbert
0b93f3c88f
Add <Guid,CarouselBeatmapSet>
dictionary to speed up update operations in carousel
2022-01-20 22:12:49 +09:00
Dean Herbert
9a864267d2
Fix CarouselGroupEagerSelect
not invoking subclassed AddChild
from AddChildren
calls
2022-01-20 21:57:16 +09:00
Dean Herbert
a8ce2c5edf
Detach before sending BeatmapSetInfo
to any handling method
2022-01-20 21:14:10 +09:00
Dean Herbert
b1cf3befa6
Fix incorrect query in comment
2022-01-20 18:36:20 +09:00
Dean Herbert
3ba712703b
Add a note about hidden beatmap check
2022-01-20 17:50:17 +09:00
Dean Herbert
1dabf6c8a5
Fix BeatmapCarousel
signalling it is finished loading before catching up on realm changes
2022-01-20 16:39:42 +09:00
Dean Herbert
6c46fd6931
Fix some failing tests due to realm beatmaps overwriting test beatmaps
2022-01-20 00:19:16 +09:00
Dean Herbert
2789986699
Use asynchronous loading for beatmap carousel again
2022-01-19 18:15:43 +09:00
Dean Herbert
200fcb6f83
Detach beatmap set before checking hidden state
2022-01-19 16:59:49 +09:00
Dan Balasescu
581873f944
Merge pull request #16497 from peppy/top-local-rank-optimisation
...
Rewrite `TopLocalRank` to use realm subscriptions
2022-01-19 14:22:12 +09:00
Dean Herbert
9be5bf38c6
Simplify binding/invalidation in TopLocalRank
2022-01-19 13:20:52 +09:00
Dean Herbert
7f65f3a47f
Remove all usage of BaseDifficulty
(and access Difficulty
instead)
2022-01-18 22:57:39 +09:00
Dean Herbert
f5b8653491
Add spaces to query string
2022-01-18 19:28:09 +09:00
Dean Herbert
27ea37c690
Rewrite TopLocalRank
to use realm subscriptions
...
This addresses the number one performance concern with realm (when
entering song select). Previous logic was causing instantiation and
property reads of every score in the database due to the `AsEnumerable`
specfication.
2022-01-18 18:17:53 +09:00
Dean Herbert
11ca1b6e7b
Remove one more usage of IsManaged
which could potentially go wrong
2022-01-17 13:40:27 +09:00
Bartłomiej Dach
03e4ec4214
Merge branch 'master' into realm-integration/score-and-beatmaps
2022-01-15 14:45:42 +01:00
Susko3
19467e58c1
Remove unused params from BDL methods
2022-01-15 01:06:39 +01:00
Dean Herbert
54804ebfbd
Fix delete/clear scores buttons not working
2022-01-13 18:38:38 +09:00
Dean Herbert
069d6d2954
Remove pointless compatibility parameter BeatmapSetInfoID
2022-01-13 18:02:10 +09:00
Dean Herbert
6025fe325d
Fix filter criteria not being applied after carousel loads new beatmap sets
2022-01-13 15:08:51 +09:00
Dean Herbert
b2d09b7b10
Fix further warnings
2022-01-12 23:42:12 +09:00
Dean Herbert
51251e3204
Fix CI reported warnings
2022-01-12 22:39:00 +09:00
Dean Herbert
ef0f794fd6
Remove stay newline
2022-01-12 18:13:14 +09:00
Dean Herbert
eb70a1eeb7
Replace compatibility properties with direct references
2022-01-12 18:13:14 +09:00
Dean Herbert
34aa1bf21d
Sanitise and remove some usages of Detach
which are no longer required
2022-01-12 17:49:11 +09:00
Dean Herbert
dc3730f334
Fix song select import popup not always showing
2022-01-12 17:49:11 +09:00
Dean Herbert
0aff1c232b
Fix deleted/hidden carousel queries
2022-01-12 17:49:11 +09:00
Dean Herbert
7dba3c3551
Fix most remaining test issues
2022-01-12 17:49:11 +09:00
Dean Herbert
58f8aae731
Fix one missed instance of GetResultSafely
2022-01-12 17:49:11 +09:00
Dean Herbert
02d0ca2741
Fix protected beatmaps showing up in the song select carousel
2022-01-12 17:49:10 +09:00
Dean Herbert
41d90cd0b5
Fix beatmap carousel test failures
2022-01-12 17:49:10 +09:00
Dean Herbert
e74a5022c9
Fix multiple tests via null checks and changing ToLive
to Detach
...
flow
2022-01-12 17:00:17 +09:00
Dean Herbert
6919df18fa
Fix incorrect ordering and grouping of difficulties at song select
2022-01-12 17:00:17 +09:00
Dean Herbert
2b8706b6ce
Detach and reattach scores to make work
2022-01-12 17:00:16 +09:00
Dean Herbert
60d2de8a3b
Fix potential nullref when song select filters to no results
2022-01-12 17:00:16 +09:00
Dean Herbert
de3a338d02
Update realm queries to use Filter
to allow for indirect property filtering
2022-01-12 17:00:16 +09:00
Dean Herbert
8461eaab46
BeatmapSetInfo
detach support
2022-01-12 17:00:16 +09:00
Dean Herbert
3811bd8520
Fix some null inspections
2022-01-12 17:00:16 +09:00
Dean Herbert
33060990b7
Temporarily disable WorkingBeatmapCache
and fix multiple invalid data flows
2022-01-12 17:00:16 +09:00
Dean Herbert
4295815c7d
Fix invalid equality comparison in BeatmapLeaderboard
2022-01-12 17:00:16 +09:00
Dean Herbert
6d60aa7d9c
Replace TopLocalRank
event flow with realm subscriptions
2022-01-12 17:00:16 +09:00
Dean Herbert
c9257e9ecc
Fix missing disposal of realm subscriptions in BeatmapCarousel
2022-01-12 17:00:16 +09:00
Dean Herbert
5dc497e949
Replace BeatmapLeaderboard
event flow with realm subscriptions
2022-01-12 17:00:16 +09:00
Dean Herbert
db05727ec4
Remove unused includeProtected
parameter
2022-01-12 17:00:16 +09:00
Dean Herbert
3152d2d8a0
"Update" BeatmapCarousel
2022-01-12 17:00:16 +09:00
Dean Herbert
00e3af3366
Update model manager and many related classes to get things compiling again
2022-01-12 17:00:00 +09:00
Dean Herbert
4f6a05ce3d
Reimplement all query methods
2022-01-12 16:57:27 +09:00
Dean Herbert
2a4bee61dd
Update many score-related classes to move closer to being able to persist to realm
2022-01-12 16:57:27 +09:00
Dean Herbert
b8cd3cdbbc
Various updates to ruleset and primary key usages to move closer to realm support
2022-01-12 16:57:13 +09:00
Dean Herbert
e6fdd0e969
Miscellaneous fixes that don't fit elsewhere
2022-01-12 16:39:36 +09:00
Dean Herbert
213d89b479
Update null fallback cases involving OnlineID
2022-01-12 16:39:36 +09:00
Dan Balasescu
af9fad00c3
Merge branch 'master' into async-deadlock-safety
2022-01-10 16:11:09 +09:00
Dean Herbert
02d8a6359a
Update FilterMatchingTest
and filter code to use ruleset's OnlineID
...
The tests were relying on the `RulesetID` being set to 0 in the example
beatmap, even though the ruleset *instance* was set to ID 5.
This explicitly adds that 0 value to show intent, and also removes the
incorrect specification of 5 (which would cause the convert filter tests
to fail).
Also updates the filter code to use `OnlineID`, which is required in
realm changes.
2022-01-10 12:30:34 +09:00
Dean Herbert
2ef791069c
Fix typon on AdvancedStats
2022-01-07 17:33:38 +09:00
Dean Herbert
00177a3ae1
Update usages to new naming
2022-01-06 22:54:43 +09:00
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