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

326 Commits

Author SHA1 Message Date
Dean Herbert
ca9cfbe51d Move selection fallback logic out of BeatmapCarousel to SongSelect 2020-03-12 18:42:08 +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
8294dd0b71 Fix changing ruleset at song selectnot scrolling the current selection back into view 2020-03-10 19:59:49 +09:00
Dean Herbert
489bf16bea Add SelectNext and SelectPrevious global actions 2020-03-02 18:55:28 +09: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
77c06b1c6e Fix beatmap carousel potentially missing beatmap imports 2020-01-29 17:09:12 +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
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
smoogipoo
91735ff367 Update MathUtils namespace usages 2020-01-09 13:43:44 +09:00
Huo Yaoyuan
ab70abe8bd Turn off unexpected new warnings. 2019-12-15 20:07:56 +08: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
Huo Yaoyuan
b04bca7db6 Reference elements in origin definition. 2019-11-17 20:55:40 +08:00
Huo Yaoyuan
d60493a961 Use discards. 2019-11-12 20:03:21 +08: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
Dean Herbert
b57298406f Fix right click blocking not resetting correctly 2019-08-15 19:25:33 +09:00
Dean Herbert
0f4bada21e Fix right click absolute scrolling interfering with context menus 2019-08-15 18:27:45 +09:00
Dean Herbert
e73a9c2748 Fix song select context menus displaying off-screen 2019-08-15 14:06:29 +09:00
Dean Herbert
90b1fe81f3 Update cached usage in line with framework changes 2019-08-09 19:12:29 +09:00
Dean Herbert
3571cb96b0 Fix broken merge 2019-07-27 12:56:55 +09:00
David Zhao
57e6c388a1
Merge branch 'master' into carousel-sizing 2019-07-27 11:40:07 +09:00
David Zhao
0f6c6c7de0 consolidate halfheight as well 2019-07-26 15:22:29 +09:00
David Zhao
6765e9f7fa Combine into properties and update for framework changes 2019-07-26 15:13:10 +09:00
David Zhao
c89830f3d8 move constants, combine local vars into properties 2019-07-26 13:07:28 +09:00
David Zhao
a9f0dda9d7 Confine positional input 2019-07-25 17:36:13 +09:00
David Zhao
97eb5293a8 Don't depend on parent sizing 2019-07-25 17:32:21 +09:00
David Zhao
c4bed0e6d2 Resize BeatmapCarousel, update carouselitem logic 2019-07-25 15:31:21 +09:00
Dean Herbert
69844e6c24 Fix beatmap present failing directly after an import 2019-07-25 12:18:18 +09:00
Dean Herbert
8703f0ad40 Change song select initialisation to promote db context sharing 2019-06-30 22:23:48 +09:00
Dean Herbert
9e1cb90dd8 Remove existing argument for ItemAdded event
For all usages, it looks like this was unnecessary.
2019-06-26 11:40:41 +09:00
smoogipoo
13234fb4a4 Adjust comments a bit 2019-06-12 16:07:35 +09:00
David Zhao
4f09141718 remove extra bool 2019-05-29 12:22:34 +09:00
David Zhao
1a871af552 Fix hide selection, add test 2019-05-28 19:15:29 +09:00
Dean Herbert
612db31c38 Apply newline additions 2019-04-01 12:16:32 +09:00
Dan Balasescu
5de99f3f5b
Merge branch 'master' into fix-random-select-crash 2019-03-22 14:11:06 +09:00
Dean Herbert
37010f97d7 Fix random select crashing
Closes #3383.
2019-03-21 21:02:54 +09:00
Dean Herbert
e2503888a4 Expose carousel's loaded flag 2019-03-21 20:51:06 +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
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
Dean Herbert
8617aaa2a7 Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
Unknown
6eff79913b remove blank lines 2019-01-11 10:34:56 +01:00
smoogipoo
f27bd3ef3e OpenTK -> osuTK 2018-11-20 17:14:59 +09:00
ekrctb
99fc04c8af Change signature to new event handler 2018-10-02 12:02:47 +09:00
smoogipoo
a8f156584b Update framework with positional/non-positional changes 2018-09-26 14:01:15 +09: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
919e78a89a Attempt to fix cross-thread database usage 2018-08-29 01:42:25 +09:00
Dean Herbert
95cca046fb Merge branch 'master' into open-downloaded-beatmas 2018-07-25 12:38:49 +02:00
Dean Herbert
0f37758314 Update framework 2018-07-21 16:21:53 +09:00
Dean Herbert
9611292f4e FilterTask -> PendingFilter 2018-07-18 13:18:50 +09:00
Dean Herbert
e395a47112 Changes to naming and text 2018-04-18 19:47:13 +09:00
Dean Herbert
81f0649e44 Merge remote-tracking branch 'origin/master' into tgi74-rightclickscrolling 2018-04-13 19:50:44 +09:00
tgi74000
1a2b1d4c98 Use the already existent RightMouseScrollbar field 2018-04-13 11:32:33 +02:00
Dean Herbert
32a74f95a5 Normalize all the line endings 2018-04-13 18:26:38 +09:00
tgi74000
e3cd0ef200 Add right click scrolling in song select (and its option) 2018-04-13 11:09:49 +02:00
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
Dean Herbert
0e669c9a3f Fix many warnings 2018-03-24 18:23:22 +09:00
Dean Herbert
d4aeb3d00b Fix BeatmapCarousel's flush not correctly applying selection changes
They may have been delayed until the next Update, which is too late in this case.
2018-03-23 12:10:13 +09:00
naoey
2c0488b1f1
Invert bool, add test, and handle ruleset change. 2018-03-09 19:39:28 +05:30
naoey
d04f47718f
Make song select choose random when initial selection fails.
- Revert TestCasePlaySongSelect to master
2018-03-09 17:36:55 +05:30
naoey
25fb527cc7
Remove previous fix and move filtered logic to carousel.
- Add an optional bool parameter to SelectBeatmap to skip selecting
filtered maps
2018-03-09 15:51:00 +05:30
Dan Balasescu
a3d26d7d55
Merge branch 'master' into fix-song-select-iteration 2018-02-28 21:40:25 +09:00
Dean Herbert
4a52db14d1 Fix depth of already-visible panels not being updates after a sorting change 2018-02-28 14:18:25 +09:00
Dean Herbert
9b44f447ca Fix song select iteration when all panels are filtered
Resolves #2069.
2018-02-27 17:52:12 +09:00
Dean Herbert
9b33499fe7 Merge remote-tracking branch 'upstream/master' into RefactorInputQueues 2018-01-16 20:04:34 +09:00
Dean Herbert
a3f05ca9ec Avoid unnecessary use of linq 2018-01-09 12:43:10 +09:00
Dean Herbert
b90b1e326e
Merge branch 'master' into fix-randomizer 2018-01-09 12:00:21 +09:00
TocoToucan
ae032cbf23 Support HandleKeyboardInput, HandleMouseInput, CanReceiveKeyboardInput, CanReceiveMouseInput properties 2018-01-07 23:40:00 +03:00
Dean Herbert
37d393bca0 Update licence headers 2018-01-05 20:21:19 +09:00
Endrik Tombak
ce156098f6 Merge branch 'fix-randomizer' of https://github.com/LittleEndu/osu into fix-randomizer 2018-01-03 12:33:43 +02:00
Endrik Tombak
969fa65c42 Merge branch 'master' of https://github.com/ppy/osu into fix-randomizer 2018-01-03 12:31:59 +02:00
Endrik
35af5d1ce6
Merge branch 'master' into fix-randomizer 2018-01-03 12:25:07 +02:00
Endrik Tombak
5abf93038b Reset only visible sets for more randomized feel 2017-12-31 14:47:27 +02:00
Dean Herbert
dfee8e911f Fix dummy beatmap selection not propagating to song select components 2017-12-31 12:55:53 +09:00
Endrik Tombak
987a6403da Faster count for AppVeyor 2017-12-31 03:25:43 +02:00
Endrik Tombak
d032790e19 Doesn't allow randomizer to select invisible maps 2017-12-31 03:10:54 +02:00
Dean Herbert
e4a8402d3c Use better logic
We need to still perform selection if selectedBeatmap itself is null
2017-12-28 12:38:40 +09:00
FreezyLemon
33480b85c8 fix for Drawables being empty crashing 2017-12-28 03:35:53 +01:00
Dan Balasescu
3a2dadc9d3
Fix spelling error 2017-12-27 23:14:48 +09:00
Dean Herbert
cf9a9762f7 Fix beatmap wedge appearing with incorrect info on entering song select
Closes #1762
2017-12-27 13:02:21 +09:00
Dean Herbert
9ccc49c9b5 Make selection triggering more liberal 2017-12-26 15:32:39 +09:00
Dean Herbert
ed7ae4e956
Merge branch 'master' into fix-info-wedge 2017-12-26 15:08:52 +09:00
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
Dean Herbert
482e10966c Ensure a selection is made on entering song select if no selection is current 2017-12-24 17:02:56 +09:00
Dean Herbert
cf316b3c51 Add tests for initial load states of PlaySongSelect 2017-12-24 15:39:25 +09:00
Dean Herbert
8e644e878a Merge remote-tracking branch 'upstream/master' into fix-info-wedge 2017-12-23 21:40:27 +09:00
Aergwyn
1d67746d32 fix crash in SongSelect when traversing while zero beatmaps are loaded 2017-12-23 12:53:11 +01:00
Dean Herbert
2313ff0ddb Fix beatmap info wedge not showing up when zero beatmaps are loaded
Closes #1722.
2017-12-22 22:19:11 +09: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