Skip to content

Commit 5f190fa

Browse files
committed
Exclude steam API when unavailable
Add exclusion block for all UnityEngine.InputSystem.Steam types when UNITY_ENABLE_STEAM_CONTROLLER_SUPPORT is not defined to avoid false positives when the Steam plugin is absent.
1 parent 10358ff commit 5f190fa

1 file changed

Lines changed: 51 additions & 0 deletions

File tree

Assets/Tests/InputSystem/APIVerificationTests.cs

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -605,6 +605,57 @@ public SteamHandle(ulong handle) {}
605605
[ScopedExclusionProperty("1.0.0", "UnityEngine.InputSystem.LowLevel", "public struct KeyboardState : IInputStateTypeInfo", "public fixed byte keys[14];")]
606606
// Allow Key.IMESelected to be marked as Obsolete
607607
[ScopedExclusionProperty("1.0.0", "UnityEngine.InputSystem", "public enum Key", "IMESelected = 111,")]
608+
609+
#if !UNITY_ENABLE_STEAM_CONTROLLER_SUPPORT
610+
// Steam support is conditional (#if UNITY_ENABLE_STEAM_CONTROLLER_SUPPORT) and absent when
611+
// the steam plugin is not installed, so all Steam types are excluded from the comparison.
612+
[Property("Exclusions", @"1.0.0
613+
namespace UnityEngine.InputSystem.Steam
614+
public interface ISteamControllerAPI
615+
public void ActivateActionSet(UnityEngine.InputSystem.Steam.SteamHandle<SteamController> controllerHandle, UnityEngine.InputSystem.Steam.SteamHandle<InputActionMap> actionSetHandle);
616+
public void ActivateActionSetLayer(UnityEngine.InputSystem.Steam.SteamHandle<SteamController> controllerHandle, UnityEngine.InputSystem.Steam.SteamHandle<InputActionMap> actionSetLayerHandle);
617+
public void DeactivateActionSetLayer(UnityEngine.InputSystem.Steam.SteamHandle<SteamController> controllerHandle, UnityEngine.InputSystem.Steam.SteamHandle<InputActionMap> actionSetLayerHandle);
618+
public void DeactivateAllActionSetLayers(UnityEngine.InputSystem.Steam.SteamHandle<SteamController> controllerHandle);
619+
public UnityEngine.InputSystem.Steam.SteamHandle<InputActionMap> GetActionSetHandle(string actionSetName);
620+
public int GetActiveActionSetLayers(UnityEngine.InputSystem.Steam.SteamHandle<SteamController> controllerHandle, out UnityEngine.InputSystem.Steam.SteamHandle<InputActionMap> handlesOut);
621+
public SteamAnalogActionData GetAnalogActionData(UnityEngine.InputSystem.Steam.SteamHandle<SteamController> controllerHandle, UnityEngine.InputSystem.Steam.SteamHandle<InputAction> analogActionHandle);
622+
public UnityEngine.InputSystem.Steam.SteamHandle<InputAction> GetAnalogActionHandle(string actionName);
623+
public int GetConnectedControllers(UnityEngine.InputSystem.Steam.SteamHandle<SteamController>[] outHandles);
624+
public UnityEngine.InputSystem.Steam.SteamHandle<InputActionMap> GetCurrentActionSet(UnityEngine.InputSystem.Steam.SteamHandle<SteamController> controllerHandle);
625+
public SteamDigitalActionData GetDigitalActionData(UnityEngine.InputSystem.Steam.SteamHandle<SteamController> controllerHandle, UnityEngine.InputSystem.Steam.SteamHandle<InputAction> digitalActionHandle);
626+
public UnityEngine.InputSystem.Steam.SteamHandle<InputAction> GetDigitalActionHandle(string actionName);
627+
public void RunFrame();
628+
public struct SteamAnalogActionData
629+
public bool active { get; set; }
630+
public Vector2 position { get; set; }
631+
public abstract class SteamController : InputDevice
632+
public bool autoActivateSets { get; set; }
633+
public UnityEngine.InputSystem.Steam.SteamHandle<InputActionMap> currentSteamActionSet { get; }
634+
public abstract UnityEngine.InputSystem.Utilities.ReadOnlyArray<SteamController.SteamActionSetInfo> steamActionSets { get; }
635+
public UnityEngine.InputSystem.Steam.SteamHandle<SteamController> steamControllerHandle { get; }
636+
protected SteamController() {}
637+
public void ActivateSteamActionSet(UnityEngine.InputSystem.Steam.SteamHandle<InputActionMap> actionSet);
638+
protected abstract void ResolveSteamActions(ISteamControllerAPI api);
639+
protected abstract void Update(ISteamControllerAPI api);
640+
public struct SteamActionSetInfo
641+
public UnityEngine.InputSystem.Steam.SteamHandle<InputActionMap> handle { get; set; }
642+
public struct SteamDigitalActionData
643+
public bool active { get; set; }
644+
public bool pressed { get; set; }
645+
public struct SteamHandle<TObject> : System.IEquatable<UnityEngine.InputSystem.Steam.SteamHandle<TObject>>
646+
public bool Equals(UnityEngine.InputSystem.Steam.SteamHandle<TObject> other);
647+
public static bool operator ==(UnityEngine.InputSystem.Steam.SteamHandle<TObject> a, UnityEngine.InputSystem.Steam.SteamHandle<TObject> b);
648+
public static bool operator !=(UnityEngine.InputSystem.Steam.SteamHandle<TObject> a, UnityEngine.InputSystem.Steam.SteamHandle<TObject> b);
649+
namespace UnityEngine.InputSystem.Steam.Editor
650+
public static class SteamIGAConverter
651+
public static string ConvertInputActionsToSteamIGA(System.Collections.Generic.IEnumerable<InputActionMap> actionMaps, string locale = @""english"");
652+
public static string ConvertInputActionsToSteamIGA(InputActionAsset asset, string locale = @""english"");
653+
public static string GenerateInputDeviceFromSteamIGA(string vdf, string namespaceAndClassName);
654+
public static string GetSteamControllerInputType(InputAction action);
655+
public static System.Collections.Generic.Dictionary<string, object> ParseVDF(string vdf);
656+
")]
657+
#endif
658+
608659
public void API_MinorVersionsHaveNoBreakingChanges()
609660
{
610661
var currentVersion = CoreTests.PackageJson.ReadVersion();

0 commit comments

Comments
 (0)