When using Speak.activity, press and holding the Enter key after typing text can cause the activity to repeatedly trigger speech playback until the page or app breaks.
Steps to reproduce
- Open Sugarizer
- Launch Speak.activity
- Type some text in the input box
- Press and hold the Enter key
- Keep holding Enter while the text starts playing
Expected behavior
- Pressing Enter should play the typed text
- Holding Enter should not cause the page or app to break
- Only one playback should run at a time
- If Enter remains held, playback should only restart after the current playback finishes
Actual behavior
- Holding Enter repeatedly triggers playback
- Repeated key events retrigger playback immediately
- Playback can overlap or re-enter while speech is already running
- After repeated triggers, memory usage grows and the page/app can break or become unusable
- In the Sugarizer app this can end as a blank screen after running out of memory
- In the try-it website Chrome/Edge prompts the user to reload the page
Environment
- Windows, Linux, Chrome, Edge
When using Speak.activity, press and holding the Enter key after typing text can cause the activity to repeatedly trigger speech playback until the page or app breaks.
Steps to reproduce
Expected behavior
Actual behavior
Environment