Add Remote Braille IPC to the host and both SDKs
remote.braille requests and events carry a typed op under a braille-stream lease: the controller's width and gestures for a controlled reader, rendered cells back to its child, and cells, local geometry and display gestures for a controller. Direction is validated per role; a full mailbox revokes the lease. No display owner is attached yet. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
477d860fb8
commit
2651b5e9bd
10 files changed
+476
-3
No files matched your search
@@ -191,6 +191,16 @@ func (session *Session) revoke_remote_locked(reason string, notify bool) {
|
||||
}
|
||||
}
|
||||
}
|
||||
if session.remoteBraille != nil {
|
||||
drainBraille:
|
||||
for {
|
||||
select {
|
||||
case <-session.remoteBraille:
|
||||
default:
|
||||
break drainBraille
|
||||
}
|
||||
}
|
||||
}
|
||||
if session.remoteCapture != nil {
|
||||
drainCapture:
|
||||
for {
|
||||
@@ -292,6 +302,8 @@ func (session *Session) remote_call_locked(method string, params json.RawMessage
|
||||
return session.remote_key_locked(params)
|
||||
case "remote.focus":
|
||||
return session.remote_focus_locked(params)
|
||||
case "remote.braille":
|
||||
return session.remote_braille_locked(params)
|
||||
case "remote.open":
|
||||
var request tentaclewire.RemoteOpen
|
||||
if decode_strict(params, &request) != nil || len(request.Action) != 32 || request.Epoch == 0 || !tentaclewire.ValidRoleGrants(request.Role, request.Grants) {
|
||||
|
||||
Reference in new issue
Block a user