Salman Ahmed
169c98f963
Add skin providing ruleset resources in RulesetSkinProvidingContainer
2021-06-11 00:25:22 +03: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 9e652715ced79d2a6f22180c03d3e6024a10da8d.
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
Robin Avery
2484ccd50c
Ensure scale x or y does not go below zero in SkinSelectionHandler.HandleScale
2021-06-08 11:49:25 -04:00
Robin Avery
10b6b72909
Add guard clause to applyOrigins
and rename parameter
2021-06-08 10:29:45 -04:00
Robin Avery
d212918d67
Rename applyCustomAnchors
to applyFixedAnchors
for consistency with UsesFixedAnchor
2021-06-08 10:14:07 -04:00
Robin Avery
2c88e6df8d
Simplify applyClosestAnchor
to one line by moving another guard clause
2021-06-08 10:09:48 -04:00
Robin Avery
f22cc981d1
Move guard clause from checkAndApplyClosestAnchor
to applyAnchor
2021-06-08 09:51:39 -04:00
Robin Avery
529a80871b
Rename some methods for clarity
...
Methods which operate on a collection of `ISkinnableDrawable`s are now
plural; ones which take a single item are singular.
This also allows cutting down the name of `getClosestAnchorForDrawable`
to just `getClosestAnchor`.
2021-06-08 09:44:42 -04:00
Robin Avery
01da73daf2
Refactor updateDrawableAnchorIfUsingClosest
2021-06-08 09:25:49 -04:00
Robin Avery
6b127f50f2
Inline updateDrawableAnchorIfUsingClosest
2021-06-08 09:14:04 -04:00
Robin Avery
dc50ae40b9
Rename OverridesClosestAnchor
to UsesFixedAnchor
2021-06-08 08:28:42 -04:00
Dean Herbert
6017ef3825
Merge branch 'master' into fix-skin-sample-lookup
2021-06-08 17:37:36 +09:00
Dan Balasescu
791855dfa0
Merge branch 'master' into legacy-skin-default-fallback
2021-06-08 16:54:26 +09:00
Dan Balasescu
67135ce3db
Add null check
2021-06-08 16:15:17 +09:00
Dean Herbert
e0f568aa8f
Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup
2021-06-08 15:19:52 +09:00
Dean Herbert
f3f634e969
Clean up previous sample immediately on skin source change to avoid Play
after disposal
...
This seems to be the simplest way to avoid calls to `Play` after the
underlying sample may have been disposed. As per the issue thread, a
local workaround is acceptable here.
Closes #13223 .
2021-06-08 15:05:18 +09:00
Dean Herbert
27e3de3ea3
Add TODO about beatmap skin fallback support
2021-06-08 12:12:14 +09:00
Dean Herbert
06840d78cc
Remove now unused method
2021-06-08 12:06:42 +09:00
Dean Herbert
2c1f22d7ae
Refactor animation lookup to properly handle skins providing non-animated resources
2021-06-08 01:17:20 +09:00
Dean Herbert
e7e9197f03
Fix FindProvider
not correctly checking legacy default in SkinManager
2021-06-08 00:42:50 +09:00
Dean Herbert
6d56e02ddb
Add back incorrectly reverted animation handling logic
...
This reverts commit b904fa6615ad210afc94e874a3861572e9bb0499.
2021-06-08 00:17:01 +09:00
Dean Herbert
c0305343bc
Fix FindProvider
incorrectly returning LegacySkinTransformer
itself
2021-06-07 23:23:44 +09:00
Dean Herbert
08701b5eab
Ensure all lookups in LegacyHealthDisplay
use the found provider
...
Not actually needed to fix the remaining issue but does feel better
2021-06-07 23:23:12 +09:00
Robin Avery
65f594f860
Rename applyAnchor
to applyCustomAnchor
2021-06-07 05:08:18 -04:00
Robin Avery
6c9594ee35
Simplify and rearrange SkinSelectionHandler
...
The file has been restructured and reworded such that there are as few
differences as possible from b36b40cb3430e6bd511390f82c39ba23195dc8cb.
2021-06-07 02:40:15 -04:00
Robin Avery
29fa4fdf57
Refactor unacceptable syntax
2021-06-07 01:08:39 -04:00
Robin Avery
133d72a8c0
Rename UsingClosestAnchor
...
It is now "OverridesClosestAnchor". The logic is inverted accordingly.
2021-06-07 00:14:36 -04:00
Robin Avery
f28916e30f
Remove all UsingClosestAnchor() extension logic
...
It is replaced with ISkinnableDrawable.UsingClosestAnchor.
2021-06-07 00:04:53 -04:00
Robin Avery
ce635af83e
Add UsingClosestAnchor to ISkinnableDrawable
...
Also implement it as an auto property in its inheritors.
The auto properties default to true.
2021-06-06 23:47:47 -04:00
Dean Herbert
d26c9a66c2
Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup
2021-06-07 12:01:19 +09:00
Robin Avery
6a456e53f4
Rename overly long method
2021-06-06 13:28:17 -04:00
Robin Avery
888882ac63
Remove first-person comment
2021-06-06 13:27:13 -04:00
Dean Herbert
e10dfab2e8
Ensure scorebar marker lookup is performed on the source the background is retrieved from
2021-06-06 23:23:35 +09:00