Dynamic Island
Compact, minimal, and expanded Dynamic Island states for vmuxPhone Live Activities, plus expand and dismiss gestures.
What the Dynamic Island shows
On iPhone 14 Pro and every iPhone 15 / 16 / 17 model, iOS reuses the area around the front camera cutout to surface live information. While vmuxPhone has at least one connected session, the cutout becomes a tiny status indicator. iOS picks one of three layouts depending on what other apps are doing.
| State | When it appears | What vmux shows |
|---|---|---|
| Compact | vmuxPhone has a Live Activity and no other competing activity | Terminal glyph on the leading edge, status dot on the trailing edge |
| Minimal | Two or more apps have activities competing for the cutout, and vmux is not the active one | A single terminal glyph, dimmed |
| Expanded | You long-press a compact activity, or briefly swipe and hold | The full host name, status, and snippet |
If you have an iPhone without a Dynamic Island (older models, all iPhone SE), these states do not apply. You see only the Lock Screen card instead.
Compact state
The compact state is two halves of a pill that wraps the cutout.
- Leading half (left of the cutout). A
terminalsystem glyph. It tints orange if the bell has rung since you last brought the session forward, and a neutral secondary color otherwise. The glyph itself is the at-a-glance "you have a vmux session" indicator. - Trailing half (right of the cutout). A small colored dot. Green means Connected. Orange means there is an unread alert. Gray covers everything else — connecting, reconnecting, paused, background, or disconnected.
The compact state intentionally drops the host name and the snippet. There is not enough horizontal room in this layout for text. If you want to read the snippet, expand the activity.
Minimal state
If two or more apps publish Live Activities at the same time — for example, vmuxPhone plus a timer plus a sports score — iOS collapses everything except the foreground activity into the minimal state. You see one terminal glyph, no dot, no host name.
The minimal state is a hint that "vmux is still active in the background, but another app is louder right now." Tap the cutout to switch which activity is in front. iOS handles the focus rotation; vmux does not pick.
The terminal glyph still reflects the bell — it tints orange when there is an alert. That is the only state visible in the minimal layout.
Expanded state
Long-press the cutout (or briefly swipe and hold) to expand the Dynamic Island into a card. The expanded layout shows three regions:
- Leading region. A label with the terminal glyph and the host display name in a heading font. This is the same name you see in the in-app status line — your custom Label, or
user@host:portwhen no Label is set. - Trailing region. The connection dot. Same color rules as the compact state — green for Connected, orange for alert, gray otherwise.
- Bottom region. The snippet in monospaced text, up to three lines. The snippet is the latest meaningful line from the terminal — typically the working directory if shell integration is reporting one, or the most recent terminal title if not. The bottom region is hidden when the snippet is empty (for example, immediately after connect, before any output has arrived).
The expanded form is the same content as the Lock Screen card, reformatted to fit between the front camera and the screen edges.
How to expand
| Gesture | What happens |
|---|---|
| Long-press the Dynamic Island | Expands the activity into the card |
| Swipe down on the cutout from the top edge | Expands the activity (iOS 17+) |
| Tap and hold for ~0.3 seconds | Expands and stays open until you release |
| Single tap | Opens vmuxPhone with the matching session selected; does not expand |
The expand gesture and the open gesture are different on purpose. A tap is interpreted as "I want to use the app." A long-press is "I want to read the activity without leaving what I'm doing."
How to dismiss
You do not dismiss a Live Activity in the Dynamic Island the way you dismiss a notification — there is no swipe-away gesture in the cutout. The activity stays visible as long as the underlying session is connected and the app is in the background. To remove it:
- End the session. Disconnect from the host inside vmuxPhone. The activity goes away within a second.
- Foreground vmuxPhone. While the app is in the foreground and the session is the front pane, iOS hides the Dynamic Island indicator because the same session is already visible on screen.
- Force-quit vmuxPhone. Swipe up from the App Switcher and dismiss vmuxPhone. iOS reaps the activity. This is the heavy hammer — only use it if the activity is stuck. See troubleshooting.
Multiple sessions in the Dynamic Island
If you have two or more connected sessions, vmuxPhone publishes one Live Activity per session. The Dynamic Island, however, can only display one activity at a time in the compact state. iOS picks the most recently updated one and pushes the rest to a small numerical indicator on the trailing side, plus the minimal state for the others.
Long-pressing the cutout expands the active one. The remaining activities are visible on the Lock Screen, where iOS can stack them as separate cards. If you frequently need to flip between sessions visually, prefer the Lock Screen view over the Dynamic Island.
Why the dot is so coarse
The connection dot uses three colors — green, orange, gray — and that is intentional. The Dynamic Island has only a few pixels to spare on the trailing side. A four-state or five-state indicator would not be readable at a glance. The exact lifecycle state lives in the status text, which is visible only in the expanded card and on the Lock Screen.
If you need the precise state, expand the activity and read the status text. If you need a yes/no signal of trouble, the dot is what you want.
Related
- Lock Screen presentation — the full banner the expanded card mirrors.
- Enabling Live Activities — system and per-app switches.
- Troubleshooting — when the cutout does not light up.
- vmuxPhone — the parent app whose sessions feed the Dynamic Island.
- vmuxPhone — Live Activities — the in-app perspective.