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
smoogipoo
43525614ad
Store raw BeatmapCollection in filter control
2020-09-09 23:10:21 +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
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
98e9c4dc25
General refactorings
2020-09-07 21:08:48 +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
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
9dde37fe40
Hook up collection filter
2020-09-02 20:25:42 +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
Dean Herbert
f989f1aa00
Change event flow to avoid firing store delete events on update
2020-05-27 16:08:47 +09:00
Dean Herbert
052ad79fc6
Convert dangerous events to IBindables
2020-05-19 16:44:22 +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
Dean Herbert
03a74a4320
Apply same conditional check changes to DrawableCarouselBeatmapSet
2020-04-16 12:13:26 +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
Dean Herbert
abea7b5299
Tidy up function passing, naming, ordering etc.
2020-04-11 17:13:35 +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
smoogipoo
ed3e0a01e1
Re-namespace into song select
2020-04-07 15:31:22 +09:00
Santeri Nogelainen
1e8badb14a
Move all logic to TopLocalRank and remove CarouselBeatmapRank
2020-04-04 22:28:36 +03: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
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
8f9e97b4cc
Fix carousel not remembering last selection correctly
2020-03-19 18:07:39 +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
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
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
63edcddaf1
Apply ruleset filter in all cases (even when bypassing filter for selection purposes)
2020-03-12 15:06:26 +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
979988235d
Increase flexibility of StarCounter component
2020-03-08 15:56:22 +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
smoogipoo
7ad6ad0bb0
Remove hacks that bypassed layout shortcomings
2020-02-27 13:32:23 +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
voidedWarranties
8c81f1e684
Move CarouselBeatmap access to private, test using indices
2020-02-15 17:51:55 -08: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
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
voidedWarranties
ad0de27964
Safer dependency injection and accessibility levels
2020-02-12 22:11:26 -08: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
66fb72cd8a
Fix song select not showing active beatmap if it is filtered by local criteria
2020-02-10 16:59:54 +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
smoogipoo
91735ff367
Update MathUtils namespace usages
2020-01-09 13:43:44 +09:00
Huo Yaoyuan
caf3f774ba
CA1309: compare strings correctly.
2019-12-17 13:00:15 +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
Huo Yaoyuan
ccc8aa6fa4
Apply brace style.
2019-11-11 20:13:13 +08: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
Dean Herbert
f15953d65c
Fix carousel including filtered difficulties in sort comparisons
2019-10-07 15:17:03 +09: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
smoogipoo
7683f7ff23
Make OnlineStatus use OptionalRange
2019-09-19 17:12:07 +09:00
smoogipoo
0915a94470
Make BeatDivisor use OptionalRange
2019-09-19 16:53:27 +09:00
Dean Herbert
92556db9cd
Add query-based filter modes to song select search field
2019-09-19 02:48:28 +09:00
smoogipoo
a87a1e6031
Don't redraw certain buffered containers on scale change
2019-09-04 19:38:12 +09:00
smoogipoo
6368189d46
Refactor
2019-08-27 11:59:25 +09:00
Andrei Zavatski
9321f20884
Move arrow to the first line
2019-08-26 14:32:27 +03:00
Andrei Zavatski
fd0f42eee4
Fix filtered grouped difficulty items in DrawableCarouselBeatmapSet aren't hidden on first load
2019-08-26 14:11:24 +03:00
Dean Herbert
9881d3677d
Simplify icon creation
2019-08-25 12:05:46 +09:00
Dean Herbert
ef397434f6
use GroupBy instead of Distinct+FindAll
2019-08-25 12:00:06 +09:00
Dean Herbert
a19a9b90ed
Simplify group filter display
2019-08-25 11:39:26 +09:00
iiSaLMaN
8ccbe84f67
Loop on distinct rulesets of beatmap instead of all
2019-08-24 01:30:33 +03:00
iiSaLMaN
87340061e1
Add logic to create grouped difficulty icons in carousel beatmap set
2019-08-24 00:06:28 +03:00
Dean Herbert
7bf430afd5
Add padding back to difficulty icons on carousel
2019-08-21 21:16:06 +09:00
Dean Herbert
48716f8f2b
Update framework
2019-08-21 13:29:50 +09:00
Dean Herbert
f355cff8bc
Apply reviews
2019-08-15 12:11:54 +09:00
Dean Herbert
7e74953784
Merge remote-tracking branch 'upstream/master' into difficulty-icon-tooltip
2019-08-15 11:54:59 +09:00
iiSaLMaN
38bc652bf2
Remove sorting by length for beatmaps
2019-07-09 17:02:51 +03:00
iiSaLMaN
e0c1fb7818
Compare by milliseconds for length
2019-07-09 14:47:54 +03:00
iiSaLMaN
129899f419
Add a BPM property in BeatmapInfo
2019-07-08 10:43:35 +03:00
iiSaLMaN
90d5484818
Return BPM back to OnlineInfo
...
Revert commit of "Move BPM out of OnlineInfo"
2019-07-08 09:10:41 +03:00
iiSaLMaN
729f0901f7
Move Length out of OnlineInfo
2019-07-07 20:25:36 +03:00
iiSaLMaN
3ea9629daf
Move BPM out of OnlineInfo
2019-07-07 20:11:44 +03:00
iiSaLMaN
b4ef64fa61
Add sorting by Length
2019-07-07 18:26:56 +03:00
iiSaLMaN
188c80374e
Add sorting by BPM
2019-07-07 18:14:23 +03:00
Ganendra Afrasya
d540565197
Merge branch 'master' into difficulty-icon-tooltip
2019-06-22 11:54:00 +07:00
Dan Balasescu
8ab7a8641b
Add comment for why it's not a fill flow
2019-06-21 12:42:35 +09:00
David Zhao
65c84428cc
Fix position of gradient in beatmap carousel
2019-06-20 15:05:15 +09:00
Dean Herbert
d0a452cdf9
Show tooltips for beatmap set panels
2019-06-20 01:10:03 +09:00
smoogipoo
a6dc5606bc
Allow beatmapsets to be sorted by date added
2019-06-05 18:17:43 +09:00
Dean Herbert
4ca34bd5e8
Update osu! in line with audio subsystem refactor
2019-05-28 17:06:01 +09:00
smoogipoo
d7c09e7dbd
Merge remote-tracking branch 'origin/master' into fix-new-inspections
...
# Conflicts:
# osu.Game.Rulesets.Catch/Judgements/CatchDropletJudgement.cs
# osu.Game.Rulesets.Catch/Judgements/CatchJudgement.cs
# osu.Game.Rulesets.Mania/Scoring/ManiaScoreProcessor.cs
# osu.Game.Rulesets.Osu/Replays/OsuAutoGenerator.cs
# osu.Game.Rulesets.Osu/UI/Cursor/CursorTrail.cs
# osu.Game.Tests/Visual/SongSelect/TestCaseBeatmapScoresContainer.cs
# osu.Game/Graphics/OsuFont.cs
# osu.Game/Online/API/Requests/Responses/APILegacyScoreInfo.cs
# osu.Game/Overlays/Profile/Header/BadgeContainer.cs
# osu.Game/Overlays/Profile/ProfileHeader.cs
# osu.Game/Screens/Select/PlaySongSelect.cs
# osu.Game/Skinning/LegacySkinDecoder.cs
2019-05-07 13:20:17 +09:00
Dean Herbert
d40177f97c
Merge branch 'master' into drawnode-composability
2019-04-27 18:41:19 +09:00
smoogipoo
0bd35ab7bb
Turn on warnings, resolve issues
2019-04-25 17:36:17 +09:00
smoogipoo
772bef91fa
Merge remote-tracking branch 'Joehuu/master' into drawnode-composability
...
# Conflicts:
# osu.Game.Rulesets.Osu/UI/Cursor/OsuCursorContainer.cs
2019-04-08 23:01:12 +09:00
Samuel Van Allen
bb516da5b6
Removed redundant empty argument list
2019-04-03 22:57:05 +08:00
Samuel Van Allen
3660924441
Trimmed whitespace
2019-04-03 22:40:20 +08:00
Samuel Van Allen
4d60f6fb6a
Use collection initializer and added missing blank line
2019-04-03 22:37:50 +08:00
Samuel Van Allen
73c7c6c316
Hides "Details" button when OnlineBeatmapID is null
2019-04-03 21:44:36 +08:00
smoogipoo
a56e29347f
Adjust namespaces
2019-04-02 14:51:28 +09:00
Dean Herbert
c39c37a18d
Apply more missed cases
2019-04-01 12:44:46 +09:00
Dean Herbert
c496f6e56b
Fix usages of OnLoadComplete
2019-03-17 13:44:20 +09:00
Dean Herbert
26d53d06a9
Fix remaining issues
2019-02-28 13:31:40 +09:00
Dean Herbert
3015d40f8f
Merge branch 'master' into osu-fontusage
2019-02-22 18:09:23 +09:00
Dean Herbert
3fe4b8fd1c
Update variable names
...
Also cleans up some weird code
2019-02-22 17:51:39 +09:00
smoogipoo
d8c55bc729
Adjust namespaces
2019-02-21 19:05:52 +09:00
smoogipoo
bca347427f
Update with framework bindable changes
2019-02-21 18:56:34 +09:00
smoogipoo
dbfa95b9e7
Made medium the default font weight
2019-02-20 16:52:36 +09:00
smoogipoo
a2aa3ec5cb
Adjust sprite texts in-line with framework changes
2019-02-20 15:03:20 +09:00
Dean Herbert
8617aaa2a7
Update licence header (and remove year)
2019-01-24 17:43:03 +09:00
Dean Herbert
eec5afa382
Change inspection and add redundant parenthesis to appease codefactor
2018-12-15 16:37:37 +09:00
Dean Herbert
3892454ecc
Improve the way text search works at song select
2018-12-15 16:34:48 +09:00
Dean Herbert
4433346a1f
Merge branch 'master' into star-filtering
2018-12-14 20:19:59 +09:00
smoogipoo
f27bd3ef3e
OpenTK -> osuTK
2018-11-20 17:14:59 +09:00
Unknown
d83ce7e4bb
don't allow null values in FilterCriteria, ensure values in test instead
2018-10-19 12:22:10 +02:00
Unknown
11dad7bf74
filter beatmaps by star range
2018-10-10 16:46:02 +02:00
ekrctb
99fc04c8af
Change signature to new event handler
2018-10-02 12:02:47 +09:00
Dean Herbert
37f3035437
Merge remote-tracking branch 'upstream/master' into update-framework
2018-09-20 18:39:48 +09:00
smoogipoo
62135c39aa
Cleanup
2018-09-20 12:56:39 +09:00
smoogipoo
7b8094d731
Move text size/padding out of constructor
2018-09-20 12:53:45 +09:00
smoogipoo
28f31540c4
Apply changes in-line with framework localisation changes
2018-09-19 14:07:46 +09:00
Unknown
5414ce9932
add StatusPill to BeatmapInfoWedge and DrawabelCarouselBeatmapSet
2018-09-13 10:18:20 +02:00
Dean Herbert
c23b9b61a8
Simplify implementation in line with framework improvements
2018-09-06 17:28:08 +09:00
Dean Herbert
e63f60231a
Optimise carousel memory usage by unloading off-screen panels
2018-09-06 13:31:37 +09:00
Dean Herbert
03084aa04b
Revert async changes
2018-08-31 07:07:10 +09:00
smoogipoo
e7a5816d27
Use GetAsync for all samples
2018-08-27 17:30:16 +09:00
Dean Herbert
1b456fd716
Fix a potential InvalidOperationException when entering song select
...
Closes #3052 .
2018-07-23 13:11:06 +02:00
Dean Herbert
0f37758314
Update framework
2018-07-21 16:21:53 +09:00
Dean Herbert
54e53f7190
Fix player getting loaded when exiting song select
2018-05-30 15:48:20 +09:00
Dean Herbert
3886e75959
Fix potentially missing group headers in beatmap carousel
2018-04-24 01:52:25 +09:00
Dean Herbert
2d1cef79d6
Fix instability in carousel item sorting
2018-04-23 19:01:01 +09:00
Dean Herbert
1728dd6502
Make BeatmapSetOverlay accept nulls everywhere
2018-04-18 16:42:09 +09:00
Dean Herbert
f62677222c
Merge remote-tracking branch 'upstream/master' into naoey-show-beatmap-id
2018-04-18 13:08:53 +09:00
Dean Herbert
32a74f95a5
Normalize all the line endings
2018-04-13 18:26:38 +09:00
naoey
7482d5986a
Add a loading state to BeatmapSetOverlay.
...
- Handle null value in header and info sections
- Add item to context menu for carousel beatmaps to show details
2018-04-04 21:46:31 +05:30
smoogipoo
69e2d4fd22
Make CarouselRoot a nested class
2018-04-02 15:24:08 +09:00
smoogipoo
82a847b820
Extract random selection logic into CarouselRoot
2018-04-02 15:16:10 +09:00
Endrik Tombak
7e30375443
Use selectNextRandom instead
2018-03-30 10:46:46 +03:00
Endrik Tombak
3f65e3a7e3
Make selection at random when last was null
2018-03-30 00:15:32 +03:00
Shane Woolcock
d603d032d5
Inlined delete beatmap dialog
2018-02-13 16:26:05 +10:30
Shane Woolcock
8d313486b3
Add a confirmation dialog to the Delete option in the beatmap context menu
2018-02-13 00:40:34 +10:30
Dean Herbert
37d393bca0
Update licence headers
2018-01-05 20:21:19 +09:00
smoogipoo
5eb2dc3d64
Cleanup some possible CI errors
...
Not sure why these aren't being detected on master right now - they should be...
2018-01-05 01:20:24 +09:00
Dean Herbert
e0f23a056a
Fix crash from being able to perform selection after entering play mode
...
Closes #1757
2017-12-28 21:07:19 +09:00
Dean Herbert
052badc1bd
Add a right-click context option to carousel panels to view online beatmap details
2017-12-21 19:42:44 +09:00
Dean Herbert
b2cd32eb95
Move children to CarouselGroup
2017-12-18 11:57:13 +09:00
Dean Herbert
4e46565f6e
Remove todo
2017-12-18 11:25:02 +09:00
Dean Herbert
b21c22085d
Make more things private
2017-12-18 11:13:16 +09:00
Dean Herbert
dfd7787b15
Move more overhead from ctor to BDL
2017-12-18 07:58:48 +09:00
Dean Herbert
c10288541c
Avoid redundant IndexOf calls
2017-12-18 07:58:34 +09:00
Dean Herbert
54cc6fadf9
Greatly improve performance when many hidden panels are on-screen
2017-12-17 05:57:50 +09:00
Dean Herbert
5d7413f19c
Improve performance with large numbers of panels visible
2017-12-17 04:30:56 +09:00
Dean Herbert
c02ce16f47
Remove unnecessary capture
2017-12-17 03:04:57 +09:00
Dean Herbert
d27047f94d
Remove logging
2017-12-17 03:04:37 +09:00
Dean Herbert
29a8ade59f
Rename "Hidden" to "Collapsed"
2017-12-16 23:56:14 +09:00
Dean Herbert
bd9056c709
Better choose new selection when multiple items are removed including current
2017-12-16 17:32:21 +09:00
Dean Herbert
3c406662ed
Ensure correct selection after deletion of currently selected
...
Also fixes a lot of bad interactions and simplifies further.
2017-12-16 16:18:44 +09:00
Dean Herbert
a8a2c233a0
Add tests for (and fix) removal of last item in carousel
2017-12-16 00:33:09 +09:00
Dean Herbert
acfdd32783
Move DrawableCarouselBeatmap initialisation to BDL
...
oops
2017-12-15 18:38:09 +09:00
Dean Herbert
67f05977ea
Add sorting support
2017-12-15 14:36:51 +09:00
Dean Herbert
b4b2f12116
Add support for adding/removing items
...
Tests accompany of course
2017-12-15 14:36:51 +09:00
Dean Herbert
1b85952441
Cleanup and basic TestCase
2017-12-15 14:36:51 +09:00
Dean Herbert
99b00143eb
More clean-ups and event bindings
2017-12-15 14:36:51 +09:00
Dean Herbert
78dd975a35
Initial carousel infrastructue changes
2017-12-15 14:36:51 +09:00