User Interface medium complexity Shared Component mobile
1
Dependencies
0
Dependents
0
Entities
0
Integrations

Description

Reusable Flutter widget that wraps any TextField with a microphone button, enabling peer mentors to dictate text instead of typing. Displays live transcription feedback and allows the user to review and correct the recognized text before it is inserted into the field. Announces activation and deactivation state to screen readers via Flutter Semantics for WCAG 2.2 AA compliance.

Feature: Speech-to-Text Input for Reports

speech-input-widget

Responsibilities

  • Render microphone toggle button with accessible label and focus indicator
  • Display live transcription text as the user speaks
  • Insert finalized transcription into the parent text field
  • Announce recognition state changes to screen readers via Semantics

Interfaces

SpeechInputWidget({required TextEditingController controller, String? fieldLabel})
onTranscriptionUpdate(String partialText)
onTranscriptionComplete(String finalText)
startListening()
stopListening()
reset()
isListening → bool
setLanguage(String locale)

Relationships

Dependencies (1)

Components this component depends on