Commit Graph

11 Commits

Author SHA1 Message Date
Max d1ab67e60e Fix real-time speech recognition display
1. Update UI to show actual _currentText instead of fixed 'realtime recognizing...' text
   - Use Flexible widget to handle text overflow
   - Show actual recognition text when available
   - Fallback to 'realtime recognizing...' when text is empty

2. Fix final result processing logic
   - Don't update _currentText when processing final results
   - Final results only append to text field, don't interfere with real-time display

3. Improve listening status management
   - Clear _currentText when recording stops
   - Ensure clean state transitions between recording sessions

This fixes the issue where users could only see final results without real-time feedback.
2025-09-09 11:22:37 +08:00
Max d63124203b Fix critical bugs in speech recognition system
1. Add finalResult property to SpeechRecognitionResult class
   - Distinguish between real-time and final recognition results
   - Update factory methods, toString, equals, and hashCode
   - Update toMap and fromMap methods

2. Update YxAsrService to support finalResult flag
   - Add finalResult parameter to _sendResult method
   - Mark final results with finalResult: true
   - Keep real-time results as finalResult: false (default)

3. Remove unused methods to clean up codebase
   - Remove unused _toggleRecording method
   - Remove unused _updateTextController method
   - Clean up orphaned comments

These fixes resolve linter errors and ensure proper text appending functionality.
2025-09-09 11:17:13 +08:00
Max ea32370fcc Improve text input behavior: append recognition results to text field
- Change from replacing current text to appending final results
- Distinguish between real-time results (display only) and final results (append to text)
- Add proper spacing between appended text segments
- Maintain history of individual recognition segments
- Clear current text when starting new recording session
2025-09-09 11:08:44 +08:00
Max 36fa796c10 Improve demo: use RecordingButton component instead of custom implementation
- Replace custom FloatingActionButton with RecordingButton widget
- Simplify code by using built-in speech recognition integration
- Demonstrate proper usage of RecordingButton component
- Reduce demo code complexity from 80+ lines to ~40 lines
- Better showcase the plugin's provided components
2025-09-09 11:04:27 +08:00
Max c47ad5c435 Fix Flutter assets configuration: explicitly specify all model files in pubspec.yaml 2025-09-06 17:36:54 +08:00
Max d18c3fc607 Switch back to zh2023 model to fix filename mismatch issue 2025-09-06 17:30:54 +08:00
Max 9053132874 Fix model loading: switch to zh2025 model as recommended by logs 2025-09-06 17:29:11 +08:00
Max 58056c6c09 Fix Kotlin null safety issue: add null check for context in isAvailable method 2025-09-06 17:26:24 +08:00
Max 80d99d6bdd Fix Android namespace issues: add namespace to build.gradle, update AGP and Kotlin versions 2025-09-06 17:25:05 +08:00
Max ae1ec191a8 Fix build issues: remove duplicate gradle files, increase heap size, fix plugin configuration 2025-09-06 17:23:14 +08:00
Max 5c9a8ea6e6 Initial commit: Flutter speech-to-text plugin with Sherpa-ONNX integration 2025-08-27 17:09:36 +08:00