1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 05:37:24 +08:00
Commit Graph

3112 Commits

Author SHA1 Message Date
Dean Herbert
6fa1f5ef9b
Simplify invalidation logic
The only case where this was checking is guaranteed by realm to only be called once.
2023-12-18 20:31:02 +09:00
Dean Herbert
87b7699fcc
Avoid calling invalidation logic per beatmap set updated
Realm will batch the updates. We don't want to do expensive operations per set when we don't need to.
2023-12-18 20:31:02 +09:00
Dean Herbert
32cc3f9ef7
Combine multiple similar invalidation logic into single event 2023-12-18 20:31:02 +09:00
Dean Herbert
48e89b903c
Merge pull request #25760 from bdach/if-i-speak-i-am-in-big-trouble-pt-1
Fix `AdjustedAttributesTooltip` being broken by design
2023-12-15 12:26:10 +09:00
Dan Balasescu
fbef40bb1f
Reduce some allocations in SongSelect in the mania ruleset 2023-12-15 11:01:15 +09:00
Bartłomiej Dach
9e5b6b97ff
Fix AdjustedAttributesTooltip being broken by design
Fixes issue described in the following comment:
https://github.com/ppy/osu/pull/25759#issuecomment-1855954637

That is just not how the tooltip system is supposed to be used.

To name the individual sins:

- Caching and returning a tooltip instance like the classes that used
  tooltips is incorrect. The lifetime of tooltip instances is managed by
  the tooltip container. `GetCustomTooltip()` is called by it
  exclusively. It should return a fresh instance every time.

- Not putting actual data in `IHasCustomTooltip.TooltipContent` is
  wrong.

- Having `Tooltip.SetContent()` be a no-op is *grossly and flagrantly*
  wrong.

I'm not even sure which particular combination of the above
transgressions caused the issue as it presented itself, but at this time
I frankly do not care.
2023-12-14 16:15:56 +01:00
Givikap120
b22a7cf520 Update AdvancedStats.cs 2023-12-14 14:31:58 +02:00
Givikap120
c2373bb37b change the order of attributes
+ simplifying the bug fix
2023-12-14 14:31:19 +02:00
Givikap120
8698835db2 fixed bug
fixed the bug where it's not updates tooltip when there are no mods
2023-12-14 14:00:35 +02:00
Dean Herbert
5062c53e36
Refactor everything for sanity 2023-12-13 17:33:39 +09:00
Dean Herbert
fb44fb18e0
Update in line with upstream changes 2023-12-13 16:42:20 +09:00
Dean Herbert
0259ab761b
Merge branch 'master' into arod_rate_adjust 2023-12-13 16:35:18 +09:00
Dean Herbert
fdcf87569c
Merge pull request #25711 from smoogipoo/mania-convert-song-select-keycount
Display osu!mania keycount in song select carousel panels and details
2023-12-13 16:31:25 +09:00
Dean Herbert
5e10f9f899
Fix failing tests due to more textboxes being present with searchable dropdowns 2023-12-13 15:11:47 +09:00
Dan Balasescu
c31ff84417
Fix possible nullref 2023-12-13 13:32:27 +09:00
Givikap120
2d94841929 fixed one test 2023-12-10 02:00:32 +02:00
Givikap120
faf54bca43
Merge branch 'master' into arod_rate_adjust 2023-12-10 01:49:18 +02:00
Givikap120
1d0c37e138 fixed test errors 2023-12-10 00:40:05 +02:00
Dan Balasescu
b36db3518c
Add keycount to song select details panel and carousel panels 2023-12-09 22:31:51 +09:00
Dean Herbert
8286d3896f
Fix searching at song select matching incorrect ruleset
Regressed with https://github.com/ppy/osu/pull/25679.
2023-12-06 11:32:26 +09:00
Dean Herbert
45e499778f
Search terms before performing other criteria checks
Very minor, but putting the more common case towards the
start of the method allows early return.
2023-12-05 15:28:56 +09:00
Dean Herbert
42010574b5
Avoid list construction when doing filtering 2023-12-05 15:26:14 +09:00
Dean Herbert
27e778ae09
Avoid sorting items when already in the correct sort order 2023-12-05 14:47:32 +09:00
Dean Herbert
7fda38d0b0
Use ordinal comparison when searching at song select
Bypasses various overheads. In theory should be fine? (until it's not on some language)
2023-12-05 14:14:13 +09:00
Givikap120
c2a44cf118 Made custom tooltip 2023-11-23 23:30:18 +02:00
Dean Herbert
9172632b0b
Rename method and adjust xmldoc to be very explicit about how wrong this is 2023-11-17 17:04:20 +09:00
Dean Herbert
d1cea10f21
Add note about localisation 2023-11-17 16:52:40 +09:00
Bartłomiej Dach
70d2de5669
Move song select touch detector to solo implementation
It should not run in multiplayer. Even if we wanted to allow touch-only
playlist items at some point, the current behaviour of multiplayer song
selects with respect to touch device mod is currently just broken.
2023-11-14 16:35:16 +09:00
Givikap120
26d493986c Fixed precision and updated AdvancedStats 2023-11-12 18:05:18 +02:00
Dean Herbert
6bd5eda2a0
Merge branch 'master' into arod_rate_adjust 2023-11-12 15:49:07 +09:00
Givikap120
60c3e7250b fixed naming incconvinence 2023-11-10 15:13:40 +02:00
Bartłomiej Dach
97fee6143c
Rename touch "input handlers" to detectors 2023-11-06 10:08:19 +01:00
Givikap120
d0b2b4f7b9 Update AdvancedStats.cs 2023-11-04 21:57:42 +02:00
Givikap120
820519c37d improved tooltip 2023-11-04 21:55:46 +02:00
Givikap120
57170501cd Improve code quality 2023-11-04 17:25:09 +02:00
Bartłomiej Dach
8784dd42c0
Do not attempt to turn on Touch Device in song select with autoplay active 2023-11-02 22:56:43 +01:00
Bartłomiej Dach
c588f434e5
Fix song select touch handler causing crashes when song select is suspended 2023-11-02 21:24:58 +01:00
Bartłomiej Dach
2f6ff893b5
Automatically activate and deactivate touch device mod in song select 2023-11-02 19:45:48 +01:00
Susko3
366e41f111 Use local workaround instead of disabling clipboard entirely 2023-10-28 12:23:23 +02:00
Bartłomiej Dach
2fa2217381
Fix left side of carousel blocking volume adjust hotkeys
Closes https://github.com/ppy/osu/issues/25234.

A little ad-hoc, but probably fine...?
2023-10-26 16:26:35 +02:00
Bartłomiej Dach
5d6a58d443
Add failing test scene for scroll handling in song select 2023-10-26 16:24:16 +02:00
Bartłomiej Dach
19be0055d5
Merge pull request #24921 from Pasi4K5/diff-name-search
Add ability to search for difficulty names using square brackets
2023-10-24 12:07:02 +02:00
Dean Herbert
c9161a7bfc
Remove incorrect copy paste fail 2023-10-24 17:32:01 +09:00
Bartłomiej Dach
abfe2ce0fe
Fix comment 2023-10-24 10:05:20 +02:00
Dean Herbert
fcb366af4d
Add diff= support for more advanced usages 2023-10-24 16:09:05 +09:00
Dean Herbert
6865d8894d
Simplify implementation and remove unsupported test coverage 2023-10-24 16:01:32 +09:00
Dean Herbert
1274829193
Block scroll and click operations on the left side of song select 2023-10-24 14:51:40 +09:00
Pasi4K5
c5339f440e Apply code review suggestions 2023-10-23 23:30:54 +02:00
Dean Herbert
0ae0b0c353
Fix carousel "reset position" marging not scaling with UI scale correctly 2023-10-20 20:04:26 +09:00
Dean Herbert
137a1d948d
Allow interacting with the carousel anywhere in empty space at song select 2023-10-20 20:04:11 +09:00
Dean Herbert
e081fa48a2
Fix various other inspections 2023-10-17 17:48:51 +09:00
Dean Herbert
7139592e43
Fix collections not being sorted correctly in context menus 2023-10-16 16:03:12 +09:00
Dean Herbert
936a21a661
Fix redundant bindable initialisation in SongSelect 2023-10-06 16:51:56 +09:00
Pasi4K5
c927f90a48 Replace regex with a custom algorithm and update test scene. 2023-09-29 13:46:33 +02:00
Pasi4K5
23c20ca5f4 Add xmldocs 2023-09-29 13:44:11 +02:00
Dean Herbert
ae31a8fadf Reduce delay before loading beatmap after selection change at song select
This was originally set high because of performance concerns. We have
since improved things quite drastically. Even with a very low debounce
my song select is amazingly smooth.

This is about as low as we can got unless we want chaos when key
repeating left/right arrows (it's not as bad as you think, maybe worth
testing during review and see if it feels more expected?).

Of note, stable has key repeat disabled on left/right arrows and zero
debounce.

Addresses concerns in https://github.com/ppy/osu/discussions/24916.
2023-09-26 16:21:09 +09:00
Pasi4K5
74896fd6b2 Fix multiple difficulty search queries not working in some cases. 2023-09-25 13:38:47 +02:00
Pasi4K5
793d1bf970 Add ability to search for difficulty names 2023-09-25 12:52:49 +02:00
Salman Ahmed
5266cdc722 Add explanatory note 2023-09-21 20:41:10 +03:00
Dean Herbert
9af4e75dfc Disable clipboard export for song select textbox
In combination with https://github.com/ppy/osu-framework/pull/5997,
closes https://github.com/ppy/osu/issues/24867
2023-09-22 01:24:29 +09:00
Givikap120
1a70110a4e Added BeatmapAttributesDisplay support 2023-09-12 16:44:44 +03:00
Givikap120
c61212c523
Merge pull request #1 from Givikap120/master
add display to calibrate
2023-09-12 13:02:19 +03:00
Bartłomiej Dach
589f56d20c
Merge branch 'master' into map_info_on_mod_settings 2023-09-11 09:55:54 +02:00
Givikap120
ed213dad6c minor format fix (again) 2023-09-08 20:38:24 +03:00
Givikap120
a01537c763 minor format fix 2023-09-08 20:37:07 +03:00
Givikap120
02e2b8546c fixed all stated problems 2023-09-08 20:32:55 +03:00
Joseph Madamba
d0780fb765
Add comment explaining the max width 2023-09-06 15:01:55 -07:00
Joseph Madamba
97bd90c0ff
Link new song select wedge title and artist to search text box 2023-09-06 14:41:10 -07:00
Bartłomiej Dach
b5e812eb3e
Merge pull request #24723 from bdach/beatmap-carousel-split-missing-status
Fix status on carousel beatmap set not showing in split difficulty mode
2023-09-06 09:35:38 +02:00
Bartłomiej Dach
63e92f8fab
Fix status on carousel beatmap set not showing in split difficulty mode 2023-09-06 08:25:19 +02:00
Dean Herbert
dded7fe6ca
Merge branch 'master' into beatmap-options-popover 2023-09-06 15:16:34 +09:00
Joseph Madamba
73604d171a
Make "general" a common string 2023-09-05 23:00:07 -07:00
Joseph Madamba
701e24e8d3
Move hide button to end and make it work 2023-09-05 18:50:31 -07:00
Joseph Madamba
6d2e57b73e
Add localisation support to beatmap options popover 2023-09-05 18:43:42 -07:00
Joseph Madamba
69fa8747f0
Explicitly add beatmapinfo param to edit call 2023-09-05 18:35:35 -07:00
Joseph Madamba
9565039192
Hide beatmap options popover when beatmap changes 2023-09-05 18:24:54 -07:00
Joseph Madamba
9f10082ffc
Revert param removal of delete beatmap and clear scores methods 2023-09-05 18:24:53 -07:00
Joseph Madamba
8e8fae0fba
Fix left padding adding shear width 2023-09-05 15:21:23 -07:00
Joseph Madamba
3f92dae55c
Move star rating display and status pill out of reloadable content 2023-09-05 15:20:20 -07:00
Joseph Madamba
676240928e
Move actual star updating to star rating display 2023-09-05 14:57:55 -07:00
Joseph Madamba
5becac6431
Make beatmap non-nullable
Doesn't seem like it'll be null after first set: 5454d1caa1/osu.Game/OsuGameBase.cs (L363)
2023-09-05 14:43:43 -07:00
Joseph Madamba
b63c1e4257
Remove mods dependency
BPM is not in the wedge anymore.
2023-09-05 12:14:17 -07:00
Joseph Madamba
6e6dd86a51
Remove buffered container comment
While it is true that there is a transparency overlap, it is only seen when entering/exiting song select. And there are other components game-wide that exhibit the same issue when transparency changes. Should be reconsidered another time.
2023-09-05 11:10:06 -07:00
Dean Herbert
4cd4eb3b0a Move "general" to top for key binding compatibility 2023-09-05 16:46:49 +09:00
Dean Herbert
84d8d33ad7 Add headers and generally improve the UI of the popover 2023-09-05 16:44:55 +09:00
Dean Herbert
4ff3630484 Add a slight delay before hiding the popover to better visualise button click 2023-09-05 16:14:01 +09:00
Dean Herbert
a8c9c2bf17 Remove buffered container (doesn't seem like it's doing anything anymore) 2023-09-05 15:59:00 +09:00
Joseph Madamba
98d027d207
Fix star counter animating weird and delayed 2023-09-04 21:39:41 -07:00
Joseph Madamba
9accd0ded2
Fix star rating rolling counter regression 2023-09-04 21:21:56 -07:00
Joseph Madamba
82fb9dc2ef
Simplify text initialization 2023-09-04 12:59:21 -07:00
Joseph Madamba
e70510ef19
Move drawable and binding logic to standard places 2023-09-04 12:56:20 -07:00
Joseph Madamba
2df2002735
Move negative corner radius margin to constructor 2023-09-04 12:42:01 -07:00
Joseph Madamba
e8a793425b
Use right padding instead of negative x offset 2023-09-04 12:38:40 -07:00
Joseph Madamba
bf71099e57
Fix truncating sprite text usage 2023-09-04 12:04:20 -07:00
Joseph Madamba
2fbd67cf26
Merge branch 'master' into beatmap_wedge_clean_ii 2023-09-04 11:24:20 -07:00
Joseph Madamba
f616648730 Remove icon blending 2023-09-04 09:40:35 -07:00
Joseph Madamba
6c0bd13308
Add xmldoc to newly exposed methods 2023-09-04 00:53:14 -07:00
Joseph Madamba
5abf271b56
Implement beatmap options popover 2023-09-04 00:53:09 -07:00
Magnus-Cosmos
d674856e29
Use existing localisations in BeatmapInfoWedge 2023-09-02 22:49:29 -04:00
Givikap120
5e5fe84a88 Update AdvancedStats.cs 2023-09-03 02:19:02 +03:00
Givikap120
0779cd8f4f minor design fixes 2023-09-03 02:17:04 +03:00
Givikap120
2e2d4d0d60 Merge branch 'map_info_on_mod_settings' of https://github.com/Givikap120/osu into map_info_on_mod_settings 2023-09-03 02:09:18 +03:00
Givikap120
b0398b6259 functionality is done 2023-09-03 02:09:01 +03:00
Givikap120
f8adc911cd
Merge branch 'ppy:master' into map_info_on_mod_settings 2023-08-28 23:17:04 +03:00
Givikap120
50235cc245 somewhat working prototype 2023-08-28 23:16:33 +03:00
Bartłomiej Dach
97d1c6e9fc
Merge branch 'master' into carousel-difficulty-split 2023-08-28 11:07:43 +02:00
Bartłomiej Dach
b9795eb3d4
Fix changes to beatmap sets being undone on switching sort mode 2023-08-28 11:02:22 +02:00
Bartłomiej Dach
80ec18d117
Fix incorrect selection restore code in split case
The fallback to "any of the added sets" needs to be applied after
they've all been added, rather than with every added one. Otherwise, in
flows that expect a particular difficulty to be selected in the end
(such as exiting from editor) would end up switching away from the
edited beatmap.
2023-08-28 10:06:26 +02:00
Bartłomiej Dach
0af6cc1394
Fix online ID not being propagated in split difficulty mode
Would result in failures to re-download the beatmap in update flows, for
instance.
2023-08-28 10:05:59 +02:00
Givikap120
290f8db341 fixed stated problems
removed functions from `Ruleset.cs` and added a `GetEffectiveDifficulty()` instead
2023-08-26 02:13:14 +03:00
Givikap120
8a1fc7c340 Basic stuff (not working for now) 2023-08-26 01:20:41 +03:00
Dean Herbert
10b1450138 Rename remove method to better explain return type being IEnumerable 2023-08-25 18:10:54 +09:00
Givikap120
d5ac93f631 Added "value is rate changed" indication
Now if AR or OD value is not "true" and changed through rate - it will appear with symbol `*`
Instead of `11` it wil show as `11*`
2023-08-25 01:25:12 +03:00
Givikap120
772633178c Moved ruleset decl in right place 2023-08-25 01:02:12 +03:00
Givikap120
17b9b1649a Fixed "works only for std" problem
1) Now it use AR/OD calculation from Ruleset class
2) Implemented needed functions in each of default rulesets
2023-08-25 00:58:26 +03:00
Dean Herbert
89eeff515b Reduce complexity of selection restore 2023-08-25 00:52:54 +09:00
Givikap120
ed886a4dc3 Added a true AR/OD display when using DT/HT 2023-08-24 16:49:42 +03:00
Dean Herbert
9e94f38091 Fix typo in local variable 2023-08-24 18:33:15 +09:00
Dean Herbert
018be4c20f Fix selection not being retained when switching between split mode 2023-08-22 18:49:02 +09:00
Dean Herbert
ecbf0f138e Fix incorrect handling when new beatmaps arrive 2023-08-22 18:48:07 +09:00
Dean Herbert
2b1c6ae612 Ensure ID is maintained in temporary BeatmapSetInfos 2023-08-22 18:48:07 +09:00
Dean Herbert
290d18ad69 Split out difficulties in beatmap carousel in a bit of a hacky way
Seems like the simplest path forward for now, without a full rewrite.
2023-08-22 18:47:41 +09:00
Jamie Taylor
b15a54c914
Use new overlay pop-in/pop-out samples 2023-08-17 18:36:36 +09:00
Bartłomiej Dach
e208f38bcb
Merge pull request #24361 from peppy/fix-editor-global-music-hotkey-conflicts
Disallow interacting with the global track state in `Player` and `Editor`
2023-07-30 12:28:53 +02:00
Dean Herbert
f15394fb6d Fix temporary auto mod (ctrl+enter at song select) not reverting in all scenarios 2023-07-28 14:49:06 +09:00
Bartłomiej Dach
3b11559fd0
Revert "Show only the break length instead of total minute breaks"
This reverts commit 9edaa6909e.
2023-07-25 22:17:55 +02:00
Dean Herbert
157b1f301b Rename AllowTrackAdjustments to more understandable ApplyModTrackAdjustments 2023-07-25 20:20:53 +09:00
Dean Herbert
9edaa6909e Show only the break length instead of total minute breaks 2023-07-25 17:02:27 +09:00
Dean Herbert
480163ec2e Show drain length in length tooltip at song select 2023-07-25 16:58:53 +09:00
Aki
cb354685ca
simplify code 2023-07-16 10:21:32 +08:00
Aki
309c852222
Compute the top local rank directly without an expensive detach call 2023-07-15 23:00:13 +08:00
Dean Herbert
d72765b6f8
Merge pull request #24114 from peppy/editor-save-local-score-management
Ensure scores always have the correct linked `BeatmapInfo`
2023-07-07 15:40:54 +09:00
Dean Herbert
ddd65f5fe7
Merge pull request #24135 from peppy/update-realm
Bring realm library up-to-date
2023-07-07 10:59:38 +09:00
Dean Herbert
f69f6adf67 Remove beatmap info wedge rotation animation
It looks jank and also causes framebuffer overheads.

But mostly because it looks jank.
2023-07-06 16:15:42 +09:00
Dean Herbert
a98a36872e Bring realm library up-to-date 2023-07-06 13:37:43 +09:00
Dean Herbert
d74b1e148d Make ScoreInfo.BeatmapInfo nullable 2023-07-04 14:50:34 +09:00
Bartłomiej Dach
bf99fc61b8
Trim full phrase filters in a more precise manner 2023-06-27 21:50:36 +02:00
Bartłomiej Dach
e3d97b37f1
Rename MatchMode.{None -> Substring} 2023-06-27 21:28:37 +02:00
Bartłomiej Dach
06654dc618
Merge branch 'master' into full-term-exact-match 2023-06-27 21:27:39 +02:00
Dean Herbert
c423f77d53 Add support for matching full terms using suffixed ! 2023-06-27 15:34:33 +09:00
Dean Herbert
702266198b Add missing "title=" search support at song select 2023-06-27 15:21:13 +09:00
Bartłomiej Dach
4cb122dad4
Escape user input before embedding into regex 2023-06-26 22:27:48 +02:00
Bartłomiej Dach
8a7a42b7ec
Remove weird nullable enable and double licence header 2023-06-26 22:19:52 +02:00
Dean Herbert
a74547c43c Add exact match support at song select 2023-06-26 18:26:44 +09:00
Dean Herbert
14c95f4584 Apply NRT to FilterCriteria 2023-06-26 17:54:11 +09:00
Bartłomiej Dach
e3a89a6273
Fix remaining obvious CI inspections 2023-06-24 16:07:01 +02:00
Dean Herbert
0ab0c52ad5 Automated pass 2023-06-24 01:00:03 +09:00
Dean Herbert
eb31fdecee Apply osu! side changes in line with FocusedOverlayContainer.PopIn abstract change
See https://github.com/ppy/osu-framework/pull/5834
2023-06-18 20:57:32 +09:00
Bartłomiej Dach
eafd774044
Bring back old formatting spec 2023-06-17 20:03:24 +02:00
Dean Herbert
4919069ea6 Avoid humanizer regex compilation overhead when opening song select for the first time 2023-06-18 02:19:03 +09:00
Dean Herbert
ce41ef6e5d Move OrderByTotalScore() to an extension method 2023-06-16 15:24:30 +09:00
Salman Ahmed
39db17d2e9 Use better method to avoid rewinding to deleted beatmaps 2023-06-15 11:22:11 +03:00
Salman Ahmed
2360219b55 Merge branch 'master' into fix-rewind-bug 2023-06-15 10:48:23 +03:00
Bartłomiej Dach
af3fbdbfbe
Merge pull request #23829 from Joehuu/truncating-text-tooltips
Add tooltips to truncated text
2023-06-12 23:43:31 +02:00
Salman Ahmed
7269b4807e
Merge branch 'master' into improve-song-select-enter-performance 2023-06-12 13:13:59 +03:00
Joseph Madamba
85fedbd025
Add tooltips to truncated text 2023-06-08 19:44:07 -07:00
Dean Herbert
10c43d2273 Reduce delays and fades for carousel panels to improve song select initial display performance
Entering song select has seen a hit since the new renderer
implementations. The underlying cause is large numbers of vertex buffer
uploads (the counter hits >200k for me during the transition).

Song select is in the process of being redesigned, and we are probably
going to make improvements to the renderer to alleviate this, but in the
mean time we can greatly improve the user experience by reducing how
long the initial fade in delays take on panels.

Visually this doesn't look too jarring, and gives a more immediate
feeling when scrolling. It's also more feasible to load elements sooner
with https://github.com/ppy/osu/pull/23809 applied.
2023-06-08 17:28:58 +09:00
Dean Herbert
3978d4babb Crop and disable mipmaps on beatmap panel backgrounds
This is an effort to improve general performance at song select. At
least on the metal renderer, I can notice very high draw frame overheads
related to texture uploads.

By reducing the size of the texture uploads to roughly match what is
actually being displayed on screen (using a relatively inexpensive crop
operation), we can bastly reduce stuttering both during initial load and
carousel scroll.

You might ask if it's safe to disable mipmapping, but I've tested with
lower resolutions and bilinear filtering seems to handle just fine.
Bilinear without mipmaps only falls apart when you scale below 50% and
we're not going too far past that at minimum game scale, if at all.
2023-06-08 16:51:07 +09:00
Salman Ahmed
62cb6a98ca Remove redundant nullable suppression directives 2023-06-07 08:20:41 +03:00
Dean Herbert
8ba9677b96
Merge branch 'master' into add-last-played-filter 2023-06-06 16:12:23 +09:00
Dean Herbert
c54670aee1 Add comment explaining implementation 2023-06-06 13:30:56 +09:00
Joseph Madamba
4eb0f0261c
Fix song select beatmap panels not displaying correct background shown in web 2023-06-04 22:54:15 -07:00
Dean Herbert
764f0323f4 Show "rewind" text on random button when beginning a right mouse press 2023-05-17 14:51:40 +09:00
Dean Herbert
94b184712d Fix random button hover state not correctly being reset on right click 2023-05-17 14:51:40 +09:00
Dean Herbert
444f66b0ee Move to base class for added safety 2023-05-03 18:46:30 +09:00
Dean Herbert
cd31cff8cd Fix event subscriptions not being cleaned up in DrawableCarouselBeatmap
The handling of cleanup is performed only the `Item_Set` method. This
was already correctly called for `DrawableCarouselBeatmapSet`, but not
for the class in question here.

This would cause runaway memory usage at song select when opening many
beatmaps to show their difficulties. For simplicity, we don't yet pool
these (and generate the drawables each time a set is opened) which isn't
great but likely will be improved upon when we update the visual /
filtering of the carousel. But this simplicity caused the memory usage
to blow out until exiting back to the main menu when cleanup would
finally occur.
2023-05-03 18:41:30 +09:00
Renzo Poggio
0991c56e1c
Add extra check in 'SelectPreviousRandom'
Check if the poped beatmap exists within the beatmapSets
2023-04-25 00:05:15 -03:00
Joseph Madamba
c80a25328d
Shorten label to just "matches" 2023-04-17 20:59:41 -07:00
Joseph Madamba
d0cbe206a9
Revert back to one number with "matching beatmap difficulties" label 2023-04-10 23:37:29 -07:00
Joseph Madamba
f0c8a3202b
Merge remote-tracking branch 'upstream/master' into fix-beatmap-terminology 2023-04-10 23:22:15 -07:00
Joseph Madamba
f80de08f24
Adjust BeatmapSetsChanged xmldoc
Co-Authored-By: Dean Herbert <pe@ppy.sh>
2023-04-10 11:28:23 -07:00
Joseph Madamba
c7dea71793
Use existing BeatmapSetsChanged action 2023-04-10 11:26:18 -07:00
Joseph Madamba
7f5b99c91b
Fix song select beatmap difficulty count not updating when deleting 2023-04-09 22:12:51 -07:00
Elvendir
8e156fdb51 Enforce integer through regex match instead 2023-04-07 00:29:46 +02:00
Elvendir
928145cdeb Enforce integer value before y and M
Change impacted Tests
2023-04-05 22:12:15 +02:00
Elvendir
c2f225f025 Made Operator.Equal not parse for date filter and added corresponding test 2023-04-05 21:25:58 +02:00
Elvendir
df170517a8 -renamed function inverse() to reverseInequalityOperator() for clarity
-changed default case of reverseInequalityOperator() to out of range exception
2023-04-05 11:59:31 +02:00
Elvendir
d6c6507578
Update osu.Game/Screens/Select/FilterQueryParser.cs
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-04-04 19:30:13 +02:00
Elvendir
4b053b4785 changed regex match to be inline with standard 2023-04-01 22:58:25 +02:00
Joseph Madamba
8b30c67580
Fix incorrect song select matching label by showing both beatmap and difficulty count for less ambiguity 2023-03-26 18:08:28 -07:00
Dean Herbert
425be20e46 Fix song select search textbox font size incorrectly having increased 2023-03-22 14:17:39 +09:00
Dean Herbert
5cb8160eee
Merge pull request #22773 from peppy/show-song-select-visible-beatmap-count
Show count of visible beatmaps at song select
2023-03-21 18:22:29 +09:00
Bartłomiej Dach
ea8da69263
Fix importing beatmaps not changing count of visible beatmaps
Reproduction steps:

1. Go to song select
2. Open beatmap listing
3. Import a beatmap that would fit the current filter criteria
4. The count of visible beatmaps does not change

Fixed by updating the count on `BeatmapSetsChanged` too.
2023-03-20 20:53:53 +01:00
Bartłomiej Dach
695ee39b87
Privatise setter 2023-03-20 20:30:54 +01:00
Elvendir
6dead81d21 Generalized tryUpdateLastPlayedRange to tryUpdateDateRange and Added tests 2023-03-19 18:43:17 +01:00
Elvendir
216a88e18d limited max Date comparison 2023-03-18 21:35:10 +01:00
Elvendir
102576cd8c adddede LastPlayed as filter option in beatmap carousel 2023-03-18 17:53:41 +01:00
Cootz
556964eae0
Merge branch 'master' into BitmapUpdatesOnScore 2023-03-16 12:16:42 +03:00
Dean Herbert
f21238f517 Adjust shadow to look better 2023-03-16 16:51:57 +09:00
Dean Herbert
cd102da3af Move matches string inside text box 2023-03-16 16:34:31 +09:00
Dean Herbert
89b42ddd98 Don't localise beatmap count string for now 2023-03-16 15:02:38 +09:00
Bartłomiej Dach
6c5ccdfd90
Merge branch 'master' into optimise-search 2023-03-07 22:07:29 +01:00
Bartłomiej Dach
5213bfa5c9
Merge branch 'master' into make_skin_reset_dangerous 2023-03-07 21:06:44 +01:00
Dean Herbert
5af41bb1c8 Move filter matching code into own method to simplify early returns 2023-03-07 17:24:17 +09:00
Dean Herbert
87d0bef313 Use nullable comparison helper method instead of manual implementation 2023-03-06 15:16:32 +09:00
mk56-spn
908651cc11 make ResetConfirmDialog properly utilise its parent's logic
Adjust name of `DeleteAction` to `DangerousAction`
2023-03-05 20:57:26 +01:00
OliBomby
70a925aab1 added extra early-returns 2023-03-04 16:49:33 +01:00
OliBomby
b90c389ff0 using List instead of Span in GetSearchableTerms 2023-03-04 15:42:35 +01:00
OliBomby
91d206e8d2 Optimised GetSearchableTerms
Reduced memory allocations to 1
2023-03-03 19:21:50 +01:00
Dean Herbert
82293c0c86 Don't filter away results with missing data when using "Date Submitted" or "Date Ranked" sort modes
From a user's perspective, changing a sort / order mode shouldn't filter
away results, but we were doing this.

In terms of UX expectations, in stable this kind of scenario would
results in a group being added to the end of son select with "Not
ranked" or "Unknown". I think we should aim to match this eventually.
2023-03-03 16:36:18 +09:00