返回提交历史
Modified
g4f/gui/client/static/js/chat.v1.js
+2
-16
XFEstudio/gpt4free
Fix SpeechRecognition on Phone
f323e885
代码差异
1 个文件
+2
-16
@@ -1261,38 +1261,27 @@ if (SpeechRecognition) {
1261
1261
recognition.interimResults = true;
1262
1262
recognition.maxAlternatives = 1;
1263
1263
1264
let shouldStop = false;
1265
1264
function may_stop() {
1266
1265
if (microLabel.classList.contains("recognition")) {
1267
shouldStop = true
1268
1266
recognition.stop();
1269
1267
}
1270
1268
}
1271
1269
1272
1270
let startValue;
1273
let timeoutHandle;
1274
1271
let lastDebounceTranscript;
1275
1272
recognition.onstart = function() {
1276
1273
microLabel.classList.add("recognition");
1277
1274
startValue = messageInput.value;
1278
1275
lastDebounceTranscript = "";
1279
timeoutHandle = window.setTimeout(may_stop, 10000);
1280
1276
};
1281
1277
recognition.onend = function() {
1282
if (shouldStop) {
1283
microLabel.classList.remove("recognition");
1284
messageInput.focus();
1285
} else {
1286
recognition.start();
1287
}
1278
microLabel.classList.remove("recognition");
1279
messageInput.focus();
1288
1280
};
1289
1281
recognition.onresult = function(event) {
1290
window.clearTimeout(timeoutHandle);
1291
timeoutHandle = window.setTimeout(may_stop, 8000);
1292
1282
if (!event.results) {
1293
1283
return;
1294
1284
}
1295
1296
1285
let result = event.results[event.resultIndex];
1297
1286
let isFinal = result.isFinal && (result[0].confidence > 0);
1298
1287
let transcript = result[0].transcript;
@@ -1314,13 +1303,10 @@ if (SpeechRecognition) {
1314
1303
1315
1304
microLabel.addEventListener("click", () => {
1316
1305
if (microLabel.classList.contains("recognition")) {
1317
window.clearTimeout(timeoutHandle);
1318
shouldStop = true;
1319
1306
recognition.stop();
1320
1307
} else {
1321
1308
const lang = document.getElementById("recognition-language")?.value;
1322
1309
recognition.lang = lang || navigator.language;
1323
shouldStop = false;
1324
1310
recognition.start();
1325
1311
}
1326
1312
});