Dean Herbert
14bdcef26b
Add missing newline
2021-06-22 16:20:09 +09:00
Dean Herbert
0ad189e357
Expose skin sources via ISkinSource
and revert to consuming based on hierarchy
2021-06-22 16:19:55 +09:00
Dean Herbert
1b0aadcc6f
Merge branch 'master' into transformers-per-skin
2021-06-22 16:03:15 +09:00
Salman Ahmed
ec040ff3fc
Fix leak due to not properly unbinding SourceChanged
event on disposal
2021-06-22 05:05:41 +03:00
Salman Ahmed
caa90bccc6
Fix default skin potentially added twice in RulesetSkinProvidingContainer
2021-06-22 03:45:43 +03:00
Salman Ahmed
627c857da8
Propagate SourceChanged
events from SkinManager
down in the ruleset skin container
2021-06-22 03:45:24 +03:00
Salman Ahmed
9e5bb146d3
Add xmldoc to SkinManager
...
The `<summary>` part comes from `BeatmapManager`, which I believe works correctly here as well, as this does handle the "storage and retrieval" of skins.
2021-06-22 03:07:31 +03:00
Salman Ahmed
97dbc7f20e
Add back SkinManager.DefaultSkin
to the ruleset skin lookup sources
2021-06-22 02:54:34 +03:00
Salman Ahmed
d53a43cf3c
Isolate RulesetSkinProvidingContainer
from falling back to parent skin sources
...
For simplicity of lookup order, and which sources are used for the lookup.
2021-06-22 02:53:22 +03:00
Salman Ahmed
ebe0d43790
Add ability to disallow falling back to parent skins
2021-06-22 02:51:17 +03:00
Salman Ahmed
5cfd0e3223
Remove implicit LegacySkin
check and refactor anything using it
2021-06-21 04:16:58 +03:00
Salman Ahmed
780388d174
Fix incorrect return value
2021-06-17 03:48:29 +03:00
Salman Ahmed
74ad6f9117
Remove default skin from the ruleset skin sources
...
That one doesn't need any changes to it, can be fetched from the `SkinManager` instead.
2021-06-16 17:24:31 +03:00
Salman Ahmed
52ddf08532
Consider not adding legacy skin transformers to non-legacy skins
2021-06-16 17:24:16 +03:00
Salman Ahmed
5ebf570ec4
Revert GetRulesetTransformedSkin
accessibility change
...
This reverts commit 521077b714
.
Forgot to do it when I made this `protected`, but subclasses in test scenes require this.
2021-06-16 16:49:38 +03:00
smoogipoo
2155a4da0a
Fix intermittent HUD test failure
2021-06-16 19:52:58 +09:00
Dean Herbert
521077b714
Make getRulesetTransformedSkin
private
2021-06-16 17:44:18 +09:00
Dean Herbert
4b45d8318e
Merge branch 'master' into transformers-per-skin
2021-06-16 16:37:28 +09:00
Salman Ahmed
8de0d33c5a
Revert "Move collection change bind to LoadComplete"
...
This reverts commit d6d87e1975
.
Actually that broke things due to the "disableable" instances not added early enough, revert for now.
2021-06-11 17:59:29 +03:00
Salman Ahmed
b6947c25ec
Fix potentially adding the same skin multiple times
2021-06-11 17:55:07 +03:00
Salman Ahmed
d6d87e1975
Move collection change bind to LoadComplete
...
Best practice anyways
2021-06-11 17:35:33 +03:00
Salman Ahmed
108a3deb27
Also handle null Ruleset.CreateLegacySkinProvider
values
...
Let's just go this way for now, maybe it's a better choice to always create transformers and disallow null, but it's too much work and out of scope at this point
2021-06-11 16:26:54 +03:00
Bartłomiej Dach
550d566bf9
Simplify member access
2021-06-11 14:24:17 +02:00
Bartłomiej Dach
876a357bf2
Add support for animated colour fill in new style legacy health bar
2021-06-11 14:24:17 +02:00
Salman Ahmed
f20146d446
Fix potentially adding null skin sources
2021-06-11 12:58:38 +03:00
Salman Ahmed
e59beffc4e
Forward all base transformer lookup methods to Skin
2021-06-11 12:44:25 +03:00
Salman Ahmed
9e16359f18
Refactor disallowing in SkinProvidingContainer
to become per source
...
Fixes `FindProvider` becoming completely broken, because of no way to perform the checks on one skin source.
2021-06-11 12:29:29 +03:00
Salman Ahmed
2e01e61177
Move TODO comment to correct location
2021-06-11 11:46:30 +03:00
Salman Ahmed
8132852753
Add other affectable change action cases
2021-06-11 11:34:22 +03:00
Salman Ahmed
a985e3b8d3
Apply documentation settings for better readability
...
Co-authored-by: Dean Herbert <pe@ppy.sh>
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2021-06-11 11:25:07 +03:00
Dean Herbert
debd359d2e
Update xmldoc
2021-06-11 14:50:21 +09:00
Dean Herbert
b9050f91a4
Expose as Skin
s and consume SkinInfo
from instances
2021-06-11 14:49:35 +09:00
Salman Ahmed
2240e2c39c
Refrain from attempting to clear skin sources in disposal
...
`Drawable.Dispose` is usually in an asynchronous context (async disposals stuff) and therefore this could cause a "collection was modified; enumeration opeartion may not execute" exception.
2021-06-10 17:23:16 +03:00
Salman Ahmed
ef2c4fd0d8
Make RulesetSkinProvidingContainer
able to be overriden for testing purposes
2021-06-10 16:36:46 +03:00
Salman Ahmed
09a2d008d2
Refrain from attempting to transform null skins
2021-06-10 16:36:45 +03:00
Salman Ahmed
5c9c424a0d
Switch state case placements for consistency
...
Tickled me.
2021-06-10 13:15:18 +03:00
Salman Ahmed
c3a2f2c2a4
Expose default SkinManager
providers for use in RulesetSkinProvidingContainer
2021-06-10 13:07:32 +03:00
Salman Ahmed
59be3588eb
Change SkinSources
to a bindable list for binding SourceChanged
events
2021-06-10 13:07:32 +03:00
Salman Ahmed
dde84e5cbd
Merge branch 'master' into transformers-per-skin
2021-06-10 11:58:52 +03:00
Salman Ahmed
58cca9da06
Revert "Expose the skin lookup layers of SkinManager
to a property"
...
This reverts commit 9e652715ce
.
2021-06-10 11:57:28 +03:00
Salman Ahmed
530026b675
Add simple xmldoc to ctors explaining their deal with SkinSources
2021-06-10 11:56:13 +03:00
Salman Ahmed
18edbdd135
Remove mentioning of "layer" in skin providers
...
`SkinSources` sounds better.
2021-06-10 11:55:26 +03:00
Dan Balasescu
479d6d3fc5
Merge branch 'master' into fix-beatmap-skin-disables
2021-06-10 16:37:58 +09:00
Salman Ahmed
33a9cac398
Add special RulesetSkinProvidingContainer
managing ruleset-compatible skin setup
2021-06-09 22:49:31 +03:00
Salman Ahmed
9e652715ce
Expose the skin lookup layers of SkinManager
to a property
2021-06-09 22:49:31 +03:00
Salman Ahmed
6538d44708
Make SkinProvidingContainer
able to perform lookup on multiple skins
...
Currently `protected` functionality for use in custom `SkinProvidingContainer`s, can be exposed to public constructors if it need to later on, but I'm not sure about doing that opposed to just nesting multiple `SkinProvidingContainer`.
2021-06-09 22:49:31 +03:00
Salman Ahmed
cf40282f1f
Convert LegacySkinTransformer
s to accept raw ISkin
s rather than a full ISkinSource
2021-06-09 22:49:31 +03:00
Dean Herbert
0cf7c56e7e
Add fallback lookup support for DefaultSkin
2021-06-09 18:51:42 +09:00
Dean Herbert
2438c20d63
Fix SourceChanged
not being correctly forwarded through LegacySkinTransformer
2021-06-09 17:56:07 +09:00
Dean Herbert
448e4e7ee5
Fix FindProvider
calls on SkinProvidingContainer
not considering disable flags
...
Closes #13394 .
2021-06-09 16:19:04 +09:00