diff --git a/src/interface/desktop/chat.html b/src/interface/desktop/chat.html
index 01fbbfdc..35605b64 100644
--- a/src/interface/desktop/chat.html
+++ b/src/interface/desktop/chat.html
@@ -749,14 +749,14 @@
};
// Toggle recording
- if (!mediaRecorder || mediaRecorder.state === 'inactive') {
+ if (!mediaRecorder || mediaRecorder.state === 'inactive' || event.type === 'touchstart') {
navigator.mediaDevices
- .getUserMedia({ audio: true })
+ ?.getUserMedia({ audio: true })
.then(handleRecording)
.catch((e) => {
flashStatusInChatInput("⛔️ Failed to access microphone");
});
- } else if (mediaRecorder.state === 'recording') {
+ } else if (mediaRecorder.state === 'recording' || event.type === 'touchend' || event.type === 'touchcancel') {
mediaRecorder.stop();
mediaRecorder.stream.getTracks().forEach(track => track.stop());
mediaRecorder = null;
@@ -815,7 +815,7 @@