refactor(app): compose settings and developer tools
This commit is contained in:
parent
60a1698ce7
commit
cd7b519f78
24 changed files with 2073 additions and 333 deletions
|
|
@ -17,7 +17,9 @@ namespace AcDream.App.Input;
|
|||
/// chase-camera lifetimes. The window host wires this owner but never mutates
|
||||
/// those slots directly.
|
||||
/// </summary>
|
||||
internal sealed class PlayerModeController : ILocalPlayerTeleportModeOperations
|
||||
internal sealed class PlayerModeController :
|
||||
ILocalPlayerTeleportModeOperations,
|
||||
IDevToolsPlayerModeTarget
|
||||
{
|
||||
private readonly LocalPlayerModeState _mode;
|
||||
private readonly LocalPlayerControllerSlot _controllerSlot;
|
||||
|
|
|
|||
|
|
@ -4,13 +4,20 @@ using Silk.NET.Input;
|
|||
|
||||
namespace AcDream.App.Input;
|
||||
|
||||
internal interface IDevToolsInputContext : IInputContext, IDisposable
|
||||
{
|
||||
bool IsDisposalComplete { get; }
|
||||
void Activate();
|
||||
void Deactivate();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Non-owning input-context view for third-party frontends such as Silk's
|
||||
/// ImGuiController. It interposes named device relays so frontend callbacks can
|
||||
/// be silenced before a long live-session close and physically detached later,
|
||||
/// without disposing the canonical Silk input context.
|
||||
/// </summary>
|
||||
internal sealed class QuiescentInputContext : IInputContext
|
||||
internal sealed class QuiescentInputContext : IDevToolsInputContext
|
||||
{
|
||||
private readonly IInputContext _inner;
|
||||
private readonly HostQuiescenceGate _quiescence;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue