Bartłomiej Dach
62f01e4f40
Rename ModState
members to better convey what's what
2023-06-18 13:58:25 +02: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
af3fbdbfbe
Merge pull request #23829 from Joehuu/truncating-text-tooltips
...
Add tooltips to truncated text
2023-06-12 23:43:31 +02:00
Cootz
aece548db1
Merge branch 'master' into add-mod-search-option
2023-06-12 13:09:09 +03:00
Dean Herbert
99f93f5185
Add comment mentioning why ShowTooltip
is disabled in mod select panels
2023-06-12 15:31:22 +09:00
Dean Herbert
1e774fc017
Refactor implementation to roughly match existing HoverSampleDebounceComponent
2023-06-12 14:35:15 +09:00
Cootz
4819a28791
Move mod overlay statics to SessionStatics
2023-06-11 13:53:17 +03:00
Joseph Madamba
0d51e4f6ce
Fix mod select panels having conflicting tooltips
...
Going simple with a bool instead of making `TooltipText` init-able, as the current cases will just init `string.Empty`. And not sure if we want custom tooltip text in the future.
2023-06-10 12:24:58 -07:00
Joseph Madamba
61a9c6fd7e
Disable Truncate
in OsuSpriteText
...
Co-Authored-By: Salman Ahmed <frenzibyte@gmail.com>
2023-06-10 11:53:45 -07:00
Cootz
502193e1c6
Use debounce constant for select/deselect animation
2023-06-10 13:55:37 +03:00
Cootz
31f370ec9b
Add comments for ModSelectOverlayStatics
2023-06-10 13:50:45 +03:00
Cootz
09cd5580e1
Add sample playback time restrictions
2023-06-10 13:13:34 +03:00
Cootz
9224486ec7
Add mod select overlay statics
2023-06-10 12:38:26 +03:00
Cootz
d219b5f77f
Reword change focus comment
2023-06-09 17:10:13 +03:00
Cootz
7697dbe4b3
Mod panel don't play sound when hidden
2023-06-09 16:55:19 +03:00
Cootz
c3b50e1309
Move the multiplier back to TopRight
2023-06-09 16:25:04 +03:00
Cootz
ba7069df34
Fix SelectAllModsButton
state doesn’t update when search term changed
2023-06-06 16:12:31 +03:00
Cootz
71e6f80c40
Add hotkey for switching search bar focus
2023-06-05 15:54:19 +03:00
Cootz
3ebc801484
Move (de)select all mods hotkeys handling to ModSelectOverlay
2023-06-05 13:49:07 +03:00
Cootz
a46f5b90d4
Move focus handling into PopIn
2023-06-04 18:11:44 +03:00
Cootz
32b9e6ec8f
Make search bar active by default
2023-06-04 17:02:46 +03:00
Cootz
69b640a185
Remove hotkeys handling from DeselectAllModsButton
2023-06-03 10:47:48 +03:00
Cootz
9d4ba5d64a
Remove unnecessary null checks
2023-06-02 12:00:03 +03:00
Cootz
4c7cca101e
Rename IsValid
to Visible
2023-06-02 11:33:38 +03:00
Cootz
d400387329
Replace IConditionalFilterable
with IFilterable
2023-06-02 10:51:33 +03:00
Cootz
325c114c1c
Remove redundant xmldocs
2023-06-02 10:39:27 +03:00
Cootz
39489358fa
Apply appearance animation to aboveColumnsContent
2023-06-01 14:07:05 +03:00
Cootz
5a1c3aeb7e
Fix SearchTerm
set causing infinite loop
2023-05-31 19:36:42 +03:00
Dean Herbert
e35623df22
Update to use new Filter
method and remove silly ForcedSearchTerm
2023-05-30 13:40:59 +09:00
Cootz
22c6d6c526
Prevent checkbox from toggle on when column have no valid panels
2023-05-29 14:22:40 +03:00
Cootz
e43c233b48
Reword ForcedSearchTerm
xmldoc
2023-05-28 13:21:41 +03:00
Cootz
0e5c99b760
Fix search bar showing incorrectly
2023-05-28 13:12:57 +03:00
Cootz
5ff023113f
Update xmldoc for ForcedSearchTerm
2023-05-28 10:04:26 +03:00
Cootz
c3f06ad2db
Merge branch 'master' into add-mod-search-option
2023-05-23 08:55:57 +03:00
Cootz
67bf1b4dfe
Select/deselect first visible mod when GlobalAction.Select
is triggered
2023-05-21 11:05:01 +03:00
Cootz
6647d95ea7
Kill search focus when clicking on ModColumn
2023-05-14 18:32:16 +03:00
Cootz
ca68850730
fix formatting
2023-05-10 19:43:58 +03:00
Cootz
2467813d81
Block deselect all
short key when using the search box
2023-05-09 16:14:42 +03:00
Cootz
60bad35145
Remove weird update usage when 'deselect all' pressed
2023-05-07 15:34:01 +03:00
Cootz
4d235105d1
Convert ModSearchContainer
to block-scoped namespace
2023-05-07 15:14:49 +03:00
Cootz
cbb9f0100e
Update PopIn
and PopOut
filtering. Expose SearchTerm
2023-05-06 11:27:06 +03:00
Cootz
a226caff56
Fix testing
2023-05-06 11:09:44 +03:00
Cootz
7422b5285c
Fix wrong filtering in testing
2023-05-05 22:41:30 +03:00
Cootz
ab94b4dce1
Update ModPresetPanel.FilterTerms
to account mod names and acronyms
2023-05-05 09:52:09 +03:00
Cootz
54757df51f
Fix mod deselect button not working properly when search applied
2023-05-05 09:31:27 +03:00
Cootz
1ac9d900e1
Clear search on ModSelectOverlay.Hide
2023-05-04 19:24:37 +03:00
Dean Herbert
0034124d79
Remove unnecessary content clear
2023-05-04 11:25:10 +09:00
Dean Herbert
26b8c5b852
Fix mod list display not updating after clicking "use current"
...
This is not a regression from my changes. It was broken before them.
2023-05-04 11:23:51 +09:00
Dean Herbert
49fb5da1a2
Stop passing preset panel to popover
2023-05-04 11:19:09 +09:00
Dean Herbert
b12d139317
Remove dead code
2023-05-04 11:16:52 +09:00
Dean Herbert
99d2616c34
Move drawable construction to load
for simplicity
2023-05-04 11:14:51 +09:00
Dean Herbert
be995f1359
Add localisation support for new button string
2023-05-04 11:11:19 +09:00
Dean Herbert
b7abab6d8a
More variable improvements
2023-05-04 11:10:05 +09:00
Dean Herbert
0a584f0652
Simplify check logic and improve variable naming
2023-05-04 11:07:09 +09:00
cdwcgt
967e801f9c
code inspect
2023-05-03 23:26:58 +09:00
cdwcgt
debbd376bd
move scrollContent
update logic to updateActiveState()
2023-05-03 23:24:14 +09:00
cdwcgt
f4b1264cc9
use button Enable
status to ensure preset name is not null
2023-05-03 23:22:46 +09:00
cdwcgt
aa5a026c67
remove local button handle
2023-05-03 23:14:24 +09:00
cdwcgt
c609e6345c
remove Use Current Mods
menu item
2023-05-03 23:02:50 +09:00
Cootz
152d2678d5
Fix ModSelectColumn
completely disappear from ModSelectOverlay
2023-05-03 14:00:46 +03:00
Dean Herbert
e394b487e0
Merge branch 'master' into edit-mods-preset
2023-05-03 12:06:16 +09:00
Cootz
a6ca049739
Manually implement @bdach prototype
2023-05-02 14:15:33 +03:00
Dean Herbert
e808e7316b
Mark delegate value unused and add comment to avoid future regression
2023-05-02 13:29:30 +09:00
Bartłomiej Dach
2e3daf0a54
Fix leak of ModSettingChangeTracker
instances
...
The `SelectedMods.BindValueChanged()` callback in `ModSelectOverlay` can
in some instances run recursively. This is most heavily leaned on in
scenarios where `SelectedMods` is updated by an external component. In
such cases, the mod select overlay needs to replace the mod instances
received externally with mod instances which it owns, so that the changes
made on the overlay can propagate outwards.
This in particular means that prior to this commit, it was possible to
encounter the following scenario:
modSettingChangeTracker?.Dispose();
updateFromExternalSelection(); // mutates SelectedMods to perform the replacement
// therefore causing a recursive call
modSettingChangeTracker?.Dispose();
// inner call continues
modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);
// outer call continues
modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);
This leaks one `modSettingChangeTracker` instance from the inner call,
which is never disposed.
To avoid this, move the disposal to the same side of the recursion that
the creation happens on, changing the call pattern to:
updateFromExternalSelection(); // mutates SelectedMods to perform the replacement
// therefore causing a recursive call
modSettingChangeTracker?.Dispose();
// inner call continues
modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);
modSettingChangeTracker?.Dispose();
// outer call continues
modSettingChangeTracker = new ModSettingChangeTracker(SelectedMods.Value);
which, while slightly wasteful, does not cause any leaks.
The solution is definitely suboptimal, but addressing this properly
would entail a major rewrite of the mod instance management in the mods
overlay, which is probably not the wisest move to make right now.
2023-04-30 17:31:41 +02:00
Cootz
b795e8ac5a
Use ModSearch
in ModeSelectOverlay
2023-04-27 17:26:35 +03:00
Cootz
3c6141f233
Add ModSearch
2023-04-27 17:08:29 +03:00
Hy0tic
56ab029a58
fix issue where multipler does not update when adjusting speed for preset mod
2023-04-22 13:30:08 -04:00
cdwcgt
d025c441ca
delay mod save after click save or not popover hidden
2023-03-16 19:48:45 +09:00
cdwcgt
42bcc8bafc
revert mod store
2023-03-16 19:38:15 +09:00
cdwcgt
15f11bb1e8
scorll container and save mod after popover hidden
...
Requires manual handling of many visual effects
2023-03-11 12:31:33 +09:00
cdwcgt
1cd565193e
public CheckCurrentModCanBeSave
2023-03-11 11:39:35 +09:00
cdwcgt
8b0f127ff2
split ModPresetRow
2023-03-11 11:25:52 +09:00
cdwcgt
f4e2620402
fix test
2023-03-10 00:56:22 +09:00
cdwcgt
ca416175bb
remove useless property
2023-03-09 22:58:44 +09:00
cdwcgt
3d746e8dfb
content Menu
2023-03-09 22:49:33 +09:00
cdwcgt
5a1316f0e5
split save logic
2023-03-09 22:43:06 +09:00
cdwcgt
54564e0557
new design
2023-03-07 21:13:35 +09:00
cdwcgt
4858d3fd42
Added ability to edit mod presets
2023-03-07 02:00:40 +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
mk56-spn
90227a6496
Rename DeleteConfirmationDialog.cs
into DangerousActionDialog.cs
2023-02-27 21:57:59 +01:00
Andrei Zavatski
ffcca9fd89
Remove awkward width specification
2023-02-17 23:23:58 +03:00
Andrei Zavatski
51940133df
Adjust width and add comment
2023-02-17 15:18:45 +03:00
Andrei Zavatski
0838fa636f
Make triangles slower
2023-02-17 15:16:00 +03:00
Andrei Zavatski
a84f20bf32
Add triangles to ModSelectColumn
2023-02-17 03:09:32 +03:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
ansel
8cbc0502ae
Inline CalculateEffect
2022-09-12 15:51:18 +03:00
ansel
324a3723a5
Rewrite DMD
2022-09-10 23:23:04 +03:00
ansel
3f93ec8538
Expose counter to inheritors
2022-09-10 23:20:28 +03:00
ansel
667854b034
Make effect display have a built-in counter
2022-09-10 23:18:48 +03:00
ansel
b056cac10a
Remove generic and add default implementation for CalculateEffect
2022-09-10 08:34:29 +03:00
ansel
545e0bbcef
Adjust inheritors and test
2022-08-29 22:49:25 +03:00
ansel
5343c26452
Control colour via Current
bindable
2022-08-29 22:48:27 +03:00
ansel
7faeed88b0
Add ability to override width of value area
2022-08-29 22:08:43 +03:00
ansel
039f009562
Inherit difficulty multiplier display from ModsEffectDiplay
2022-08-27 20:26:05 +03:00
ansel
3e828c3416
Move base layout from DifficultyMultiplierDisplay to another class
2022-08-27 20:11:38 +03: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
Dan Balasescu
e1fa959f0b
Fix language change removing mod column bold text
2022-08-22 13:00:47 +09:00
Bartłomiej Dach
aa15e84bea
Adjust rounding in mod select difficulty multiplier to match song select footer
...
The 0.01 `Precision` spec on `DifficultyMultiplierDisplay.Current` would
cause the difficulty multiplier to use a different midpoint rounding
strategy than `double.ToString()`, which is the one that the song select
footer relies on. For example, a value of 0.015 would be rounded down
to 0.01 by `double.ToString()`, but rounded up to 0.02
by `BindableDouble`.
Fix the discrepancy by just deleting the `Precision` spec. Since the
value of the bindable would go through `ToLocalisableString(@"N2")`
anyway, it was redundant as is.
Fixes #19889 .
2022-08-21 23:15:49 +02:00
Bartłomiej Dach
3d14b14cfe
Use alternative method for checking panel readiness to eliminate bool flag
2022-08-17 21:56:11 +02:00
Bartłomiej Dach
3109066e34
Rename {Requires -> Pending}Configuration
2022-08-16 22:45:24 +02:00