[Bug] Silence timeout doesn't close interface and start transcription; causes silent loss of dictated speech.
Mantenedores costumam responder em até 1 dia
@LeanBitLab já está trabalhando nisso.
Desde 3/11/2026.
Avaliação
Esta issue ainda não foi avaliada.
Descrição
This issue involves the LeanType Voice Plugin, but I'm reporting it here because the silence-timeout setting and recording UI are managed through the main keyboard application.
Describe the bug
- When the configured silence timeout is reached, audio capture stops (unverified whether it actually does stop, however the result is the same regardless) without providing any clear indication to the user.
- The visual waveform does drop to a fraction of its previous amplitude, even when speaking resumes at normal volume. However, this is not a sufficiently noticeable change to meaningfully indicate that recording has stopped, unless the user is already aware of the issue and specifically watching for it. Even at its reduced amplitude, the waveform continues to animate, giving the impression that recording is still in progress.
- The recording interface / waveform remains active, does not close, and transcription does not begin until the user selects the "check" icon to close the recording interface and begin transcription, or the "X" icon to cancel recording and transcription. In fact, the recording interface appears to remain active indefinitely until the user selects one of these 2 options / buttons. Only when the user manually stops the recording and confirms it does transcription begin (as far as I'm aware, this is the only way to initiate transcription). The resulting transcription includes only the speech captured before the silence timeout was reached.
The silence timeout therefore fails to:
- Provide any indication that it has been reached.
- Close the recording interface and stop the waveform animation.
- Automatically initiate transcription of the captured audio, as is typical of voice input in other keyboards.
This creates a misleading recording state that can result in substantial, unnoticed loss of dictated speech.
To Reproduce
- Set the Voice Plugin's silence timeout to 5 seconds (or any length of time).
- Start dictation and speak normally.
- Pause for approximately 5 seconds (or previously selected length), then resume speaking.
- Observe that recording interface does not close, nor is there any clear indication of the timeout being reached, as the waveform remains active (albeit at a reduced amplitude).
- Continue dictating, then manually stop and confirm the recording and transcription.
- Observe that the resulting transcription contains only the speech preceding the silence timeout, omitting everything dictated afterward.
Expected behavior
-
When the silence timeout is reached, recording and the recording interface including the waveform animation should stop as well, clearly indicating that audio is no longer being captured. The interface should not continue displaying an active recording interface and waveform while subsequent speech is discarded.
-
When the silence timeout is reached and recording stops, transcription should start automatically without the requirement for further user prompting. This is the default / typical behaviour of voice input features in other commonly used keyboards.
Screenshots
None attached. The issue is most apparent during an active recording.
App version & Flavor
- LeanType: v4.3.1, Offline
- Voice Plugin: 1.0.1
- Whisper Base (~57 MB)
Device Info
- Model: Samsung Galaxy S22 Ultra
- OS version: Android 16
- OneUI VersionL 8.0
- Linguagem predominante
- Kotlin
- Estrelas
- 1k
- Forks
- 59
- Merge médio
- 14h 9min
- PRs com merge (30d)
- 56
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de LeanBitLab/LeanType
-
enhancement
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
LeanBitLab/LeanType#766 ·
Mantenedores costumam responder em até 1 dia
-
[issue] Tamil Keyboard issueAbertabug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
LeanBitLab/LeanType#764 ·
Mantenedores costumam responder em até 1 dia
-
enhancement
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 30/100
LeanBitLab/LeanType#757 · 7 comentários ·
Mantenedores costumam responder em até 1 dia
-
More suggestions based on version 1.0.1 of the CJK pluginTalvez já em andamento @LeanBitLab assumiu há 2 dias. Abertaenhancement
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 38/100
LeanBitLab/LeanType#754 · 1 comentário · 1 responsável ·
Mantenedores costumam responder em até 1 dia
-
enhancement
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
LeanBitLab/LeanType#753 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de LeanBitLab/LeanType
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 80/100
open-telemetry/opentelemetry-android#2183 ·
Mantenedores costumam responder em até 2 dias
-
bug core p3
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
RunanywhereAI/runanywhere-sdks#1258 ·
Mantenedores costumam responder em até 1 dia
-
bug
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
Kotlin-server-squad/vizcore#278 ·
Mantenedores costumam responder em até 1 dia
-
Empty blood pressure handled as “null” string in exam editTalvez já em andamento Um pull request vinculado a esta issue está aberto ou já foi mesclado. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
open-learning-exchange/myplanet#18484 ·
Mantenedores costumam responder em até 1 dia