Очки: разграничение SttCancel (user/timeout) — выход из режима при тишине 30с, микрофон закрывается при потере фокуса
This commit is contained in:
@@ -360,13 +360,21 @@ class HostConnection(
|
||||
}
|
||||
|
||||
is SttCancel -> {
|
||||
// Фразы не было (клик без голоса) или отмена двойным кликом: НЕ выходим
|
||||
// из режима, а возвращаемся в «слушаю» — оверлей остаётся, микрофон снова
|
||||
// открыт (TASK-glasses-chat-fix.md касяк №2).
|
||||
log("stt", "отменено — возврат в «слушаю»")
|
||||
GlassesApp.instance.thinking.value = false
|
||||
GlassesApp.instance.mainActivity?.resumeSttListening()
|
||||
?: log("stt", "mainActivity ещё нет — не могу вернуть микрофон")
|
||||
if (msg.reason == "timeout") {
|
||||
// Авто-отмена по тишине 30с: пользователь молчит/ушёл — ВЫХОДИМ из
|
||||
// режима (микрофон закрыть, оверлей скрыть), как exitAssistantMode.
|
||||
log("stt", "тишина 30с — выход из режима общения")
|
||||
GlassesApp.instance.mainActivity?.onSttTimeout()
|
||||
?: log("stt", "mainActivity ещё нет — не могу выйти из режима")
|
||||
} else {
|
||||
// Фразы не было (клик без голоса) или отмена двойным кликом: НЕ выходим
|
||||
// из режима, а возвращаемся в «слушаю» — оверлей остаётся, микрофон снова
|
||||
// открыт (TASK-glasses-chat-fix.md касяк №2).
|
||||
log("stt", "отменено — возврат в «слушаю»")
|
||||
GlassesApp.instance.thinking.value = false
|
||||
GlassesApp.instance.mainActivity?.resumeSttListening()
|
||||
?: log("stt", "mainActivity ещё нет — не могу вернуть микрофон")
|
||||
}
|
||||
}
|
||||
|
||||
is Shutdown -> {
|
||||
|
||||
Reference in New Issue
Block a user