refactor(input): own pointer and callback lifetime
Move camera pointer, framebuffer resize, and retained/devtools input edges behind focused reversible owners. Preserve input priority while making shutdown deactivate callbacks before live-session retirement and retry physical detach without stranding transport teardown.
This commit is contained in:
parent
d09e246d3a
commit
8b8afeefa3
42 changed files with 4029 additions and 461 deletions
|
|
@ -92,7 +92,8 @@ public class DispatcherToMovementIntegrationTests
|
|||
var kb = new FakeKb();
|
||||
var mouse = new FakeMouse();
|
||||
var bindings = KeyBindings.AcdreamCurrentDefaults();
|
||||
var dispatcher = new InputDispatcher(kb, mouse, bindings);
|
||||
var dispatcher = InputDispatcher.CreateDetached(kb, mouse, bindings);
|
||||
dispatcher.Attach();
|
||||
|
||||
kb.Press(Key.W);
|
||||
|
||||
|
|
@ -122,7 +123,8 @@ public class DispatcherToMovementIntegrationTests
|
|||
var kb = new FakeKb();
|
||||
var mouse = new FakeMouse();
|
||||
var bindings = KeyBindings.AcdreamCurrentDefaults();
|
||||
var dispatcher = new InputDispatcher(kb, mouse, bindings);
|
||||
var dispatcher = InputDispatcher.CreateDetached(kb, mouse, bindings);
|
||||
dispatcher.Attach();
|
||||
|
||||
kb.Press(Key.W);
|
||||
// Shift pressed alongside W — real keyboard delivers KeyDown(Shift,
|
||||
|
|
@ -140,7 +142,8 @@ public class DispatcherToMovementIntegrationTests
|
|||
var kb = new FakeKb();
|
||||
var mouse = new FakeMouse();
|
||||
var bindings = KeyBindings.AcdreamCurrentDefaults();
|
||||
var dispatcher = new InputDispatcher(kb, mouse, bindings);
|
||||
var dispatcher = InputDispatcher.CreateDetached(kb, mouse, bindings);
|
||||
dispatcher.Attach();
|
||||
|
||||
kb.Press(Key.W);
|
||||
Assert.True(BuildInputFromDispatcher(dispatcher).Forward);
|
||||
|
|
@ -188,7 +191,8 @@ public class DispatcherToMovementIntegrationTests
|
|||
var kb = new FakeKb();
|
||||
var mouse = new FakeMouse();
|
||||
var bindings = KeyBindings.AcdreamCurrentDefaults();
|
||||
var dispatcher = new InputDispatcher(kb, mouse, bindings);
|
||||
var dispatcher = InputDispatcher.CreateDetached(kb, mouse, bindings);
|
||||
dispatcher.Attach();
|
||||
|
||||
var input = BuildInputFromDispatcher(dispatcher);
|
||||
Assert.False(input.Forward);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue