Skip to main content

Module recorder_page

Module recorder_page 

Source
Expand description

<RecorderPage /> — the live recorder surface that composes the ui-storybook presentational components into the design shown in the Screen-Studio-style mock (workspace badge, capture-mode tabs, display source card, camera / mic / system-audio rows with inline expandable pickers, on-screen options summary, and the recording-controls footer).

The presentational components stay pure (they take view-models + optional callbacks). This module owns the live state — RwSignals seeded from the *_ipc modules — and converts each tick of state into the matching view-model.

IPC contracts (camera_ipc, mic_ipc, screen_ipc, system_audio_ipc, recording_ipc) are NOT touched. This is a pure render-layer rewire so the existing TCC / permission flows keep working exactly as before.

Structs§

DisplayErrorProps 🔒
Props for the DisplayError component.
DisplaySummary 🔒
View-model for the display selector row.
LiveAudioAppListProps 🔒
Props for the LiveAudioAppList component.
LiveDevicePickerProps 🔒
Props for the LiveDevicePicker component.
LiveOnScreenPopoverProps 🔒
Props for the LiveOnScreenPopover component.
LiveSourceRowProps 🔒
Props for the LiveSourceRow component.
LiveSystemAudioRowProps 🔒
Props for the LiveSystemAudioRow component.
RecorderPageProps
Props for the RecorderPage component.

Enums§

OpenPicker 🔒
Which expandable picker, if any, is currently open. Mutually exclusive so opening one closes the others.

Functions§

DisplayError 🔒
Required Props
LiveAudioAppList 🔒
Live, click-wired system-audio app list. All / None / Suggested filter chips fire on_filter; clicking an app row fires on_app_toggle(bundle_id).
LiveDevicePicker 🔒
Live, click-wired device-picker (camera + mic). Each row is a real <button> that fires on_select(id) when clicked.
LiveOnScreenPopover 🔒
Live on-screen options popover with click-wired toggles. Mirrors the storybook OnScreenOptionsPopover HTML so CSS stays shared.
LiveSourceRow 🔒
Live, click-wired equivalent of ui_storybook::components::recorder::CaptureSourceRow.
LiveSystemAudioRow 🔒
Live, click-wired system-audio row. Mirrors SystemAudioRow’s HTML for visual fidelity but routes the toggle
RecorderPage
The full Recorder surface — exact match to the design mock.
app_color_for 🔒
app_monogram 🔒
aspect_ratio_for 🔒
audio_app_view_list 🔒
camera_device_options 🔒
camera_subtitle 🔒
capture_mode_slug 🔒
default_on_screen_options 🔒
device_state_for 🔒
display_label 🔒
Display row label (AUT-271) — the source’s real name, or a generic fallback when the platform reports an empty label. Pure + unit-tested.
format_display_size 🔒
gcd 🔒
install_status_listener 🔒
is_suggested_app 🔒
mic_device_options 🔒
mic_subtitle 🔒
monogram_for 🔒
refresh_audio_apps 🔒
refresh_cameras 🔒
refresh_displays 🔒
refresh_mics 🔒
save_panel_visible 🔒
Whether the post-record Save panel (M-SAVE.3) should replace the record/stop footer. True while a recording is awaiting export (has_pending) or an export just succeeded and is showing its “Saved → Reveal” confirmation (has_saved, dismissed via “Done”).
selected_camera_label 🔒
selected_mic_label 🔒
show_as_recording 🔒
Whether the recorder controls should render the “recording” state (the RECORDING pill + Stop button). True only when the backend reports an active session (backend_recording) and the user hasn’t just requested a stop (stop_requested).