Skip to content

Stop when the call ends is always on; three designs for the call-ended capsule - #1415

Draft
kitlangton wants to merge 1 commit into
devfrom
call-ended-capsule
Draft

kitlangton wants to merge 1 commit into
devfrom
call-ended-capsule

Conversation

@kitlangton

Copy link
Copy Markdown
Collaborator

Graduates Labs › Stop when the call ends (#835) and redesigns the capsule that counts down to the stop. There are three designs to pick from. Once one is chosen, the other two, the temporary switch and the extra scenes come out, and the goldens get regenerated.

Before: a recording Hex started on its own stopped after its call ended only if the Lab was on. The capsule said "Microsoft Teams left the call" / "Hex stops recording in 30 s unless you keep recording." It had a red dot and no sign of time passing.

After: that recording always stops 30 s after its call ends, unless you keep recording. Recordings you started yourself still never stop on their own. The capsule says "Teams call ended" / "Recording stops in 23 s" and shows the call app's icon, a drain that empties as the seconds pass, and Keep recording / Stop now.

ControllerEvent::CallEnded { app, auto_stop: bool }
  -> CallEnded { app, stops_at: Option<Instant> }   // the capsule counts down to it
+ ControllerEvent::CallResumed                      // call app is back: close the capsule
labs.stop_when_call_ends   -> ignored on load; `hex labs on stop-when-call-ends` prints the graduation note
Variant (HEX_CALL_ENDED_VARIANT) Look
ring (default) 64 pt; the icon inside a ring that drains clockwise
bar 64 pt; a 2 pt bar along the foot that drains right to left
outline 48 pt single line; the capsule's own outline drains

The drain is a render-time tween: it moves every frame without rebuilding the view, the count rebuilds once a second, and the drain fades over its last 0.18 s. Under Reduce Motion it steps once a second with the count.

Scenes: call-ended-{ring,bar,outline}, plus -mid (12 s left) and -manual (no countdown) versions of each.

Read: src/rune_ui/meeting_capsules/call_ended.rs, then the CallEnded/CallResumed changes in meeting/watcher.rs and meeting_capsules.rs. The meeting-capsule-call-ended-* goldens are stale until a design is picked, so Linux panel_goldens will fail until then.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant