FIX: Fixed errors caused by recreation of DefaultInputActions
instance in InputSystemProvider
#2149
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Fixes ISXB-1446
Errors similar to the following would be output when running playmode tests when using the
InputTestFixture
(with domain reloads on playmode entry turned off):This was caused by the recreation of a
DefaultInputActions
instance viaInputSystemProvider.OnActionsChange
.This PR makes some adjustments to
InputSystemProvider
to only create a singleDefaultInputActions
instance that is reused. However, when listening for changes to actions - we still reselect theInputActionAsset
used on every change.I also noticed a bunch of things that could be cleaned up in the process and so made some modifications and renames to the class:
InputSystemProvider.Configuration
was only holding theInputActionAsset
, the action strings were constant. Since theInputActionAsset
reference was removed - it made sense to switch it to being a static class.RegisterNextPreviousAction
&UnregisterFixedActions
and soRegisterNextPreviousAction
has been renamed toRegisterFixedActions
.RegisterFixedActions
&UnregisterFixedActions
were being called on every action update, this is much more than required so they have been moved toInitialize
andShutdown
respectively.Testing status & QA
Tested locally using the project provided by the user.
Overall Product Risks
Checklist
Before review:
Changed
,Fixed
,Added
sections.Area_CanDoX
,Area_CanDoX_EvenIfYIsTheCase
,Area_WhenIDoX_AndYHappens_ThisIsTheResult
.During merge:
NEW: ___
.FIX: ___
.DOCS: ___
.CHANGE: ___
.RELEASE: 1.1.0-preview.3
.After merge: