remote.focus lets a controller keyboard-capture lease ask core to enter or leave remote focus; the reply acknowledges admission only. Core reports the actual state with remote.focus events and forwards routed transitions as remote.input events carrying the source keycode and, on fresh presses, a canonical key name. A full focus mailbox revokes the lease; revocation drains pending focus work. No native capture owner is attached yet. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
24 lines
657 B
Go
24 lines
657 B
Go
// Copyright (c) 2026 Storm Dragon
|
|
// Authors: Storm Dragon, Angus Kola
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
package tentacle
|
|
|
|
import "git.stormux.org/storm/cthulhu/internal/tentaclewire"
|
|
|
|
type RemoteCapturedKey = tentaclewire.RemoteCapturedKey
|
|
type RemoteFocusRequest = tentaclewire.RemoteFocusRequest
|
|
|
|
const (
|
|
RemoteFocusLocal = tentaclewire.RemoteFocusLocal
|
|
RemoteFocusRemote = tentaclewire.RemoteFocusRemote
|
|
)
|
|
|
|
func ValidRemoteCapturedKey(key RemoteCapturedKey) bool {
|
|
return tentaclewire.ValidRemoteCapturedKey(key)
|
|
}
|
|
|
|
func ValidRemoteFocusRequest(request RemoteFocusRequest) bool {
|
|
return tentaclewire.ValidRemoteFocusRequest(request)
|
|
}
|