feat(realtime): emit recording_video activity in circle-video flow
Some checks failed
CI / test (push) Has been cancelled
Some checks failed
CI / test (push) Has been cancelled
This commit is contained in:
@@ -21,7 +21,7 @@ Legend:
|
||||
12. Pinning - `DONE` (message/chat pin-unpin)
|
||||
13. Reactions - `DONE`
|
||||
14. Delivery Status - `DONE` (sent/delivered/read + reconnect reconciliation after backend restarts)
|
||||
15. Typing Realtime - `PARTIAL` (typing start/stop + recording voice start/stop live; recording video start/stop wired in protocol, pending full UI emitter flow)
|
||||
15. Typing Realtime - `DONE` (typing start/stop + recording voice start/stop + recording video start/stop in circle-video send flow)
|
||||
16. Media & Attachments - `DONE` (upload/preview/download/gallery)
|
||||
17. Voice Messages - `PARTIAL` (record/send/play/seek + global speed 1x/1.5x/2x; recorder now uses mime fallback + chunked capture; UX still being polished)
|
||||
18. Circle Video Messages - `PARTIAL` (send/play present, recording UX basic)
|
||||
|
||||
@@ -828,6 +828,12 @@ export function MessageComposer() {
|
||||
if (!selectedFiles.length || !activeChatId || !me) {
|
||||
return;
|
||||
}
|
||||
const isCircleVideoFlow =
|
||||
selectedFiles.length === 1 && inferType(selectedFiles[0]) === "video" && sendAsCircle;
|
||||
if (isCircleVideoFlow) {
|
||||
emitTypingStopIfActive();
|
||||
sendRealtimeChatEvent("recording_video_start");
|
||||
}
|
||||
setIsUploading(true);
|
||||
setUploadError(null);
|
||||
setUploadProgress(0);
|
||||
@@ -895,6 +901,9 @@ export function MessageComposer() {
|
||||
} finally {
|
||||
setIsUploading(false);
|
||||
setUploadProgress(0);
|
||||
if (isCircleVideoFlow) {
|
||||
sendRealtimeChatEvent("recording_video_stop");
|
||||
}
|
||||
}
|
||||
if (previewUrl) {
|
||||
URL.revokeObjectURL(previewUrl);
|
||||
|
||||
Reference in New Issue
Block a user