public sealed class InputDebugViewThe input debug panel: which devices there are, what is actuated right now, where the pointer is, and what every action reads.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
[doc 11](../../../docs/plan/11-editor.md) § Input system's second editor surface — "the action-map editor, plus an input-debug panel showing live device state". The first is InputActionsView beside this file; this is the second.
⚠ The source line is the whole design, and it is there because an instrument that never ran reports success. The editor process owns no InputService — it routes platform events straight into the interface's own document and never into an InputDeviceSet — so a panel that simply listed "what is pressed" would draw an empty list whether the player was pressing nothing or nothing in this process was reading a device at all. Those are different sentences and this panel says which one it means before it says anything else.
⚠ It reads a service rather than owning one, for the reason the agent debugger reads an AiSystem rather than stepping agents. A panel that built its own InputService and fed it from the editor's KeyEvents would be a *second* opinion about what the player is holding down — right up until the two disagreed, which is the frame somebody opened this panel to understand. A host that reads devices publishes its service with Services.Add(service), and this goes live with no further wiring.
⚠ Deltas and positions are in their own section rather than in "pressed now". InputDeviceSet.Actuated deliberately leaves them out — a rebinding screen that offered <Mouse>/position/x because the pointer drifted towards the button would be unusable — so a panel that only drew Actuated would report a mouse that never moves.
Fields and properties (8)
protected override string TagNameprotected override bool AcceptsFocusWhether the focus can rest on this kind of control at all.
public UiElement DevicesThe device families and every gamepad.
public UiElement ActuatedEvery control past its press point right now.
public UiElement PointerThe pointer's place and motion.
public UiElement ActionsWhat every action reads.
public InputService? ServiceThe service it is showing, or null.
public string SourceLineSays where the state comes from, or that it comes from nowhere.
Methods (4)
protected override void OnCreated()protected override void OnRemoved()public void Show(InputService? value)Shows a service — or that there is none.
public void Refresh()Re-reads everything the panel draws.
Used by (3)
- AssetEditorsModuleVixen.Editor.AssetEditors
- InputDebugPanelTestsVixen.Editor.App.Tests
- InputDebugViewTestsVixen.Editor.AssetEditors.Tests