Scylla Framework
  • API Reference
Search Results for

    Show / Hide Table of Contents
    • Scylla.Input
      • AutoResolveChange
      • AutoResolveResult
      • BindingConflict
      • BindingStorageSettings
      • BindingStorageType
      • BridgeSettings
      • BufferedInput
      • ConfigActionEntry
      • ConfigBindingEntry
      • ConfigConflict
      • ConfigSchemeGroup
      • ContextValidationMessage
      • ContextValidationSeverity
      • ControlScheme
      • ControlSchemeChangedEvent
      • ControlSchemeManager
      • ControlSchemeType
      • GamepadButton
      • GamepadType
      • IBindingStorage
      • IControlSchemeManager
      • IInputActionManager
      • IInputBindingManager
      • IInputBridgeManager
      • IInputBufferManager
      • IInputContextManager
      • IInputHintsManager
      • IInputListener
      • IScyllaInputBridge
      • InputActionCanceledEvent
      • InputActionManager
      • InputActionPerformedEvent
      • InputActionStartedEvent
      • InputBindingManager
      • InputBindingsLoadedEvent
      • InputBindingsSavedEvent
      • InputBridgeManager
      • InputBridgeQueryMode
      • InputBufferConsumedEvent
      • InputBufferManager
      • InputBufferedEvent
      • InputConflictResolution
      • InputContext
      • InputContextChangedEvent
      • InputContextDefinition
      • InputContextManager
      • InputContextPoppedEvent
      • InputContextPushedEvent
      • InputDeviceChangedEvent
      • InputDeviceConnectedEvent
      • InputDeviceDisconnectedEvent
      • InputDeviceType
      • InputDeviceUtil
      • InputDisabledEvent
      • InputEnabledEvent
      • InputEventType
      • InputHint
      • InputHintChangedEvent
      • InputHintsManager
      • InputIconSet
      • InputIconSet.IconMapping
      • InputIconSetChangedEvent
      • InputLoggingSettings
      • InputRebindCancelledEvent
      • InputRebindCompletedEvent
      • InputRebindManager
      • InputRebindOperation
      • InputRebindStartedEvent
      • InputRebindUtils
      • JSONFileBindingStorage
      • ManagedRebindCancelledEvent
      • ManagedRebindCompletedEvent
      • ManagedRebindDataRefreshedEvent
      • ManagedRebindStartedEvent
      • PlayerPrefsBindingStorage
      • RebindMode
      • RebindSettings
      • ScyllaInput
      • ScyllaInput.Meta
      • ScyllaInputAction
      • ScyllaInputActionMap
      • ScyllaInputBinding
      • ScyllaInputConfiguration
      • ScyllaInputContextConfiguration
      • ScyllaKey
      • ScyllaKeyConverter
      • ScyllaModifier
      • UnityInputSystemBridge
    • Scylla.Input.Editor
      • ControlSchemeDrawer
      • DeviceStatusWidget
      • IconMappingDrawer
      • InputIconSetEditor
      • ScyllaInputConfigurationEditor
      • ScyllaInputContextConfigurationEditor
      • ScyllaInputDependencyProvider
      • ScyllaInputEditor
      • ScyllaInputMenuItems
      • ScyllaInputWizard

    Class InputRebindUtils

    Stateless utility helpers used by the input rebinding system to classify bindings, format composite-part names, and build display strings for modifier composites. Extracted from InputRebindManager so the manager's public API is focused on rebind orchestration and conflict detection rather than display formatting.

    Inheritance
    object
    InputRebindUtils
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Scylla.Input
    Assembly: ScyllaInput.dll
    Syntax
    public static class InputRebindUtils

    Fields

    DEVICE_NAME_GAMEPAD

    Unity Input System device-name string (inner contents of GAMEPAD_DEVICE_PREFIX).

    Declaration
    public const string DEVICE_NAME_GAMEPAD = "Gamepad"
    Field Value
    Type Description
    string

    DEVICE_NAME_KEYBOARD

    Unity Input System device-name string (inner contents of KEYBOARD_DEVICE_PREFIX).

    Declaration
    public const string DEVICE_NAME_KEYBOARD = "Keyboard"
    Field Value
    Type Description
    string

    DEVICE_NAME_MOUSE

    Unity Input System device-name string (inner contents of MOUSE_DEVICE_PREFIX).

    Declaration
    public const string DEVICE_NAME_MOUSE = "Mouse"
    Field Value
    Type Description
    string

    GAMEPAD_DEVICE_PREFIX

    Unity Input System device-path prefix for the gamepad device (<Gamepad>).

    Declaration
    public const string GAMEPAD_DEVICE_PREFIX = "<Gamepad>"
    Field Value
    Type Description
    string

    KEYBOARD_DEVICE_PREFIX

    Unity Input System device-path prefix for the keyboard device (<Keyboard>).

    Declaration
    public const string KEYBOARD_DEVICE_PREFIX = "<Keyboard>"
    Field Value
    Type Description
    string

    KEYBOARD_ESCAPE_PATH

    Unity Input System path for the Escape key (default rebind cancel path).

    Declaration
    public const string KEYBOARD_ESCAPE_PATH = "<Keyboard>/escape"
    Field Value
    Type Description
    string

    MODIFIER_COMPOSITE_MARKER

    Substring used (case-insensitive) to identify modifier-style composite containers by their Path field. Unity's built-in composite type names that start with this substring are: ButtonWithOneModifier, ButtonWithTwoModifiers, OneModifier, TwoModifiers.

    Declaration
    public const string MODIFIER_COMPOSITE_MARKER = "Modifier"
    Field Value
    Type Description
    string

    MODIFIER_PATH_LEFT_ALT

    Unity Input System path for the left Alt modifier key.

    Declaration
    public const string MODIFIER_PATH_LEFT_ALT = "<Keyboard>/leftAlt"
    Field Value
    Type Description
    string

    MODIFIER_PATH_LEFT_CTRL

    Unity Input System path for the left Control modifier key.

    Declaration
    public const string MODIFIER_PATH_LEFT_CTRL = "<Keyboard>/leftCtrl"
    Field Value
    Type Description
    string

    MODIFIER_PATH_LEFT_SHIFT

    Unity Input System path for the left Shift modifier key.

    Declaration
    public const string MODIFIER_PATH_LEFT_SHIFT = "<Keyboard>/leftShift"
    Field Value
    Type Description
    string

    MODIFIER_PATH_RIGHT_ALT

    Unity Input System path for the right Alt modifier key.

    Declaration
    public const string MODIFIER_PATH_RIGHT_ALT = "<Keyboard>/rightAlt"
    Field Value
    Type Description
    string

    MODIFIER_PATH_RIGHT_CTRL

    Unity Input System path for the right Control modifier key.

    Declaration
    public const string MODIFIER_PATH_RIGHT_CTRL = "<Keyboard>/rightCtrl"
    Field Value
    Type Description
    string

    MODIFIER_PATH_RIGHT_SHIFT

    Unity Input System path for the right Shift modifier key.

    Declaration
    public const string MODIFIER_PATH_RIGHT_SHIFT = "<Keyboard>/rightShift"
    Field Value
    Type Description
    string

    MOUSE_DELTA_PATH

    Unity Input System path for the per-frame mouse motion vector.

    Declaration
    public const string MOUSE_DELTA_PATH = "<Mouse>/delta"
    Field Value
    Type Description
    string

    MOUSE_DEVICE_PREFIX

    Unity Input System device-path prefix for the mouse device (<Mouse>).

    Declaration
    public const string MOUSE_DEVICE_PREFIX = "<Mouse>"
    Field Value
    Type Description
    string

    MOUSE_POSITION_PATH

    Unity Input System path for the mouse pointer position - never useful as a binding target.

    Declaration
    public const string MOUSE_POSITION_PATH = "<Mouse>/position"
    Field Value
    Type Description
    string

    MOUSE_SCROLL_PATH

    Unity Input System path for the mouse scroll wheel Vector2.

    Declaration
    public const string MOUSE_SCROLL_PATH = "<Mouse>/scroll"
    Field Value
    Type Description
    string

    PART_NAME_BINDING

    Legacy alias for the button part in some older composite types; checked alongside PART_NAME_BUTTON.

    Declaration
    public const string PART_NAME_BINDING = "binding"
    Field Value
    Type Description
    string

    PART_NAME_BUTTON

    Unity Input System composite part name for the triggering button in a modifier composite.

    Declaration
    public const string PART_NAME_BUTTON = "button"
    Field Value
    Type Description
    string

    PART_NAME_MODIFIER

    Unity Input System composite part name for the single modifier slot (ButtonWithOneModifier).

    Declaration
    public const string PART_NAME_MODIFIER = "modifier"
    Field Value
    Type Description
    string

    PART_NAME_MODIFIER_1

    Unity Input System composite part name for the first modifier slot (ButtonWithTwoModifiers).

    Declaration
    public const string PART_NAME_MODIFIER_1 = "modifier1"
    Field Value
    Type Description
    string

    PART_NAME_MODIFIER_2

    Unity Input System composite part name for the second modifier slot (ButtonWithTwoModifiers).

    Declaration
    public const string PART_NAME_MODIFIER_2 = "modifier2"
    Field Value
    Type Description
    string

    Methods

    BuildModifierCompositeDisplay(IReadOnlyList<ScyllaInputBinding>, int)

    Builds a combined display string for a modifier composite binding by collecting the modifier and button display strings from all parts in the composite (e.g., "Shift + A").

    Declaration
    public static string BuildModifierCompositeDisplay(IReadOnlyList<ScyllaInputBinding> bindings, int partListIndex)
    Parameters
    Type Name Description
    IReadOnlyList<ScyllaInputBinding> bindings

    The full binding list of the action.

    int partListIndex

    The list index (not the flat Unity binding index) of any part within the composite.

    Returns
    Type Description
    string

    A combined display string, or null if the composite container cannot be found.

    FormatPartName(string)

    Capitalizes the first letter of a composite part name for display (e.g., "up" becomes "Up").

    Declaration
    public static string FormatPartName(string partName)
    Parameters
    Type Name Description
    string partName

    The part name to format.

    Returns
    Type Description
    string

    The formatted part name, or empty string if input is null or empty.

    IsBindingRebindable(ScyllaInputBinding)

    Determines whether a binding can be interactively rebound. Returns true for any binding with a non-empty effective path; returns false for empty/cleared bindings.

    Declaration
    public static bool IsBindingRebindable(ScyllaInputBinding binding)
    Parameters
    Type Name Description
    ScyllaInputBinding binding

    The binding to check.

    Returns
    Type Description
    bool

    true if the binding has a non-empty path; false otherwise.

    Remarks

    All input types are supported by the rebind system: keyboard keys, mouse buttons, mouse scroll, mouse delta, gamepad buttons, gamepad sticks, gamepad triggers, D-pad, stick clicks, etc. During interactive rebinding, StartRebind() excludes mouse position/delta from capture candidates to prevent accidental re-capture.

    IsButtonPartName(string)

    Returns true if partName matches the button part of a modifier composite (PART_NAME_BUTTON or PART_NAME_BINDING). Comparison is case-insensitive.

    Declaration
    public static bool IsButtonPartName(string partName)
    Parameters
    Type Name Description
    string partName
    Returns
    Type Description
    bool

    IsInModifierComposite(IReadOnlyList<ScyllaInputBinding>, int)

    Determines whether the binding at the specified list index is part of a modifier composite by walking backwards to find the composite container and checking whether its path contains MODIFIER_COMPOSITE_MARKER.

    Declaration
    public static bool IsInModifierComposite(IReadOnlyList<ScyllaInputBinding> bindings, int listIndex)
    Parameters
    Type Name Description
    IReadOnlyList<ScyllaInputBinding> bindings

    The full binding list of the action.

    int listIndex

    The list index (not the flat Unity binding index) of the binding to check.

    Returns
    Type Description
    bool

    true if the binding is part of a modifier composite.

    IsModifierCompositePath(string)

    Returns true if the given composite Path denotes a modifier composite (case-insensitive MODIFIER_COMPOSITE_MARKER substring match).

    Declaration
    public static bool IsModifierCompositePath(string compositePath)
    Parameters
    Type Name Description
    string compositePath
    Returns
    Type Description
    bool

    IsModifierPartName(string)

    Returns true if partName matches any of the modifier composite-part names (PART_NAME_MODIFIER, PART_NAME_MODIFIER_1, PART_NAME_MODIFIER_2). Comparison is case-insensitive.

    Declaration
    public static bool IsModifierPartName(string partName)
    Parameters
    Type Name Description
    string partName
    Returns
    Type Description
    bool
    In this article
    Back to top Scylla Framework - Input Module API Documentation