Skip to content
C.W.K.
Stream
Lesson 02 of 10 · published

A Hold Is Optional and Visible

~12 min · hold, shared-input, visibility, disconnect, fence

Level 0Spark
0 XP0/48 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete

Sometimes One Line Must Stay Whole

Shared typing is the default because the two glasses usually belong to one person. But there are moments when a line must not be interleaved: pasting a long command from the phone, composing Korean where a half-finished syllable is still being built, typing a password a second surface should not race. For those moments a surface can take a hold. While it holds, the daemon refuses input from every other surface on that session, with a typed error, until the hold ends.

The word matters. The old contract had a lease you had to take before you could type at all. A hold is the opposite shape: you can already type, and you choose, briefly, to make sure nobody else does. Nothing waits on it. Most sessions never see one.

Visible on Every Glass

A hold nobody can see is a lock with a hidden key. So every surface shows it. The holder's phone says Holding · keyboard here and its button becomes Release hold:

Smolder on an iPhone holding an office shell: chips for office, macbook and a partly visible server chip; the pane on CWKOfficeM3U reads "Holding · keyboard here" with 100%, My size and Release hold beside it, over an empty prompt.
The holder's view: a hold says it is held, and the release is one tap away.

Every other phone shows Held by and the holder's name, so a refused keystroke is never a mystery. On the Mac, the pane's context menu carries Hold Input Here and Release Input Hold, and the tab's subtitle names the attached surfaces and the hold. An observation-only device never holds — it cannot type, so it has nothing to protect.

A Hold Dies With Its Holder

The dangerous version of a hold is the one that outlives the person holding it: a phone that locked in a pocket while holding would freeze the Mac's keyboard until someone found the phone. So a hold ends when it is released, or when its holder's connection ends. The gateway closes a connection that has sent nothing — no frame, no ping — for 45 seconds after its greeting (the phone pings every 15 seconds while it is active), and closing it drops that device's surface and any hold it had. Revoking a device, or changing its approval, releases its hold too.

The phone is careful in the other direction as well. Only moving to the background pauses its connections. A momentary interruption — Control Center, the app switcher, a system alert — keeps every connection and every hold, so glancing at a notification mid-paste does not drop the fence you raised. And a reconnect never replays a hold. If you come back and still want one, you take it again, in the present, where everyone can see it.

A hold is optional, visible, and dies with its holder's connection. It fences other surfaces' input for a moment; it is never the gate you pass before typing, and it is never replayed after a reconnect.

Code

A hold's whole life·text
take    : any input surface (never an observer)
          phone "Hold" | Mac context menu "Hold Input Here"
while held
  holder sees      "Holding · keyboard here"   button "Release hold"
  other phones     "Held by <holder>"
  Mac tab subtitle surfaces + hold
  other surfaces' input -> refused (typed error), not queued
ends when
  holder releases                ( "Release hold" | "Release Input Hold" )
  holder's connection closes     (45 s with no frame or ping -> closed)
  holder's device revoked or its approval changed
never
  replayed after a reconnect
  required before typing
  dropped by a momentary interruption (Control Center, app switcher, alert)

older phones' Take Control / Release Control verbs
  on a shared-input owner mean hold / release hold

External links

Exercise

You start a long paste from the phone into an office shell while the Mac is idle. Write the three moments that matter: when you take the hold and what each glass shows, what happens if the Mac's keyboard is touched during the paste, and what ends the hold if you lock the phone instead of releasing it.
Hint
The Mac's keystroke is refused with a reason, not queued for later. A locked phone stops pinging, and the hold goes with its connection.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign in — Please sign in to comment.

No comments yet — be the first.