Dean Herbert
09ce24a7db
Switch to a better way of deciding on null selection
...
This avoids `SelectionChanged` potentially being invoked multiple times after `selectedBeatmapSet` is already `null`.
2017-12-26 13:41:02 +09:00
FreezyLemon
c737e5245e
Removed unnecessary SelectNext() call and change to dummy map when no items present
2017-12-26 01:50:05 +01:00
Aergwyn
1d67746d32
fix crash in SongSelect when traversing while zero beatmaps are loaded
2017-12-23 12:53:11 +01:00
Dean Herbert
6121cd3b67
Remove animating skipping and reorder file a bit
2017-12-18 12:30:39 +09:00
Dean Herbert
23e014b52d
Simplify drawable removal logic
2017-12-18 12:05:49 +09:00
Dean Herbert
b2cd32eb95
Move children to CarouselGroup
2017-12-18 11:57:13 +09:00
Dean Herbert
7173829896
Add filter checks to difficulty selection
2017-12-18 11:43:10 +09:00
Dean Herbert
5bfb6d1f58
Remove unused variable
2017-12-18 11:13:51 +09:00
Dean Herbert
954bc77a71
Indicate unused variable
2017-12-18 08:05:57 +09:00
Dean Herbert
482941b333
Preload drawables to force asynchronous construction
2017-12-18 06:59:32 +09:00
Dean Herbert
30a15729ec
Fix event handling from outside carousel being scheduled at the wrong level
...
Was causing BeatmapSet's Set to run *after* newer events were received.
2017-12-18 02:46:53 +09:00
Dean Herbert
942054a30f
Re-fix null selection
2017-12-18 02:26:40 +09:00
Dean Herbert
19643ba5e6
Resolve scroll animation/position issues
2017-12-18 02:23:03 +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
e2710a309c
Fix panel animation and depth
2017-12-17 02:43:24 +09:00
Dean Herbert
da0940ae0b
Only apply criteria if there are items populated in the carousel
2017-12-16 23:55:55 +09:00
Dean Herbert
33f8c8419a
Fix initial beatmap selection potentially being incorrect
2017-12-16 21:25:54 +09:00
Dean Herbert
59dbca2612
Fix ScrollToSelected being called in too many cases
2017-12-16 16:44:42 +09:00
Dean Herbert
df7e795aa3
Simplify and rename filter methods
2017-12-16 16:27:39 +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
192ceb5465
Avoid multiple access to selectedBeatmap during y position computation
2017-12-15 14:44:12 +09:00
Dean Herbert
2e3332e3fe
Shortcut non-visible panels to avoid adding as drawables
2017-12-15 14:44:12 +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
7814b2df14
More renaming
2017-12-15 14:36:51 +09:00
Dean Herbert
5cbb9b9b18
Fix random and add tests
...
Also exposes SelectedBeatmapSet.
2017-12-15 14:36:51 +09:00
Dean Herbert
8646d5d1e0
Add testing and fix filtering only some difficulties
2017-12-15 14:36:51 +09:00
Dean Herbert
ec4f99c92e
Clean up tests some more
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
b9298325a3
Rename weird config setting
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
Dean Herbert
b10240d7ef
Handle the case where the selected panel is no longer a valid selection better
2017-12-11 21:31:26 +09:00
Dean Herbert
fb92b3551e
Correct panel y positions when filtered panels are present
2017-12-11 21:12:06 +09:00
Dean Herbert
f58c554d19
Add per-difficulty filtering support
...
Filters based on selected ruleset
2017-12-11 20:22:10 +09:00
Aergwyn
821154d3bb
reverted Beatmaps-setter back to its former glory
2017-12-09 08:42:59 +01:00
Aergwyn
3e417d8e30
removed specific AddBeatmap method
...
the way UpdateBeatmapSet was extended it can handle all of this and better
2017-12-08 12:47:28 +01:00
Aergwyn
105d01d85b
fix crash when restoring from any non-SongSelect-screen
...
removed unwanted refresh
2017-12-07 22:02:53 +01:00
Aergwyn
12665fb8cf
remove unnecessary declaration + revert accidental formatting
2017-12-04 12:11:28 +01:00
Aergwyn
011223048b
fix crash if any amount of maps were restored from main menu
...
also fixes preview not playing if an entire set is restored
2017-12-04 11:47:27 +01:00
Aergwyn
3bdf82d8df
refactor newly added code to be less redundant
2017-11-28 21:38:11 +01:00
Aergwyn
6a4cc93360
fixes crash if all beatmaps of a set are hidden
2017-11-28 21:26:13 +01:00
Dean Herbert
2603219350
Load beatmap carousel panels asynchronously
2017-11-21 22:30:09 +09:00
Dean Herbert
4f6263ef86
Make many internal classes and methods public
...
This is important when using dynamic compiling to rapidly iterate. Until we actually split projects out into pieces (like the abstract ruleset project we have talked about) there is no advantage to using internal in the osu! game code.
2017-11-21 12:06:16 +09:00
Dean Herbert
f486ab1f6c
Merge branch 'master' into song_select_delete
2017-10-30 21:07:02 +09:00
Dean Herbert
5001e9f264
Fix Hide/Restore/Delete etc.
2017-10-25 22:08:34 +09:00
Dean Herbert
f69fa0cf1f
Fix selection after hiding all difficulties in a set
2017-10-20 11:16:56 +09:00
Dean Herbert
a85de09c0f
Fix beatmap carousel interactions with deletion when not yet displayed
2017-10-18 18:36:35 +09:00