diff --git a/packages/flutter_tts/CHANGELOG.md b/packages/flutter_tts/CHANGELOG.md index 78440be36..90d7b945d 100644 --- a/packages/flutter_tts/CHANGELOG.md +++ b/packages/flutter_tts/CHANGELOG.md @@ -1,5 +1,6 @@ -## NEXT +## 1.8.0 +* Add `clearVoice`. * Follow the analysis options of the frontend plugin. * Apply clang-format-16 formatting. diff --git a/packages/flutter_tts/README.md b/packages/flutter_tts/README.md index de5365d89..a686e793e 100644 --- a/packages/flutter_tts/README.md +++ b/packages/flutter_tts/README.md @@ -11,7 +11,7 @@ This package is not an _endorsed_ implementation of `flutter_tts`. Therefore, yo ```yaml dependencies: flutter_tts: ^4.2.5 - flutter_tts_tizen: ^1.7.1 + flutter_tts_tizen: ^1.8.0 ``` Then you can import `flutter_tts` in your Dart code: @@ -34,6 +34,7 @@ The features supported by Tizen are as follows. Other features are not supported - [x] is language available - [x] get voices - [x] set voice + - [x] clear voice - [x] set speech rate - [x] set speech volume (requires privilege `http://tizen.org/privilege/volume.set` in `tizen_manifest.xml`) - [x] get default voice diff --git a/packages/flutter_tts/example/integration_test/flutter_tts_test.dart b/packages/flutter_tts/example/integration_test/flutter_tts_test.dart index 0518a9a27..965787abf 100644 --- a/packages/flutter_tts/example/integration_test/flutter_tts_test.dart +++ b/packages/flutter_tts/example/integration_test/flutter_tts_test.dart @@ -67,6 +67,10 @@ void main() { ); }); + test('clearVoice returns 1', () async { + expect(await flutterTts.clearVoice(), 1); + }); + test('setSpeechRate returns 1', () async { expect(await flutterTts.setSpeechRate(0.5), 1); }); diff --git a/packages/flutter_tts/pubspec.yaml b/packages/flutter_tts/pubspec.yaml index b2e3a8bb1..6a3ee6bad 100644 --- a/packages/flutter_tts/pubspec.yaml +++ b/packages/flutter_tts/pubspec.yaml @@ -2,7 +2,7 @@ name: flutter_tts_tizen description: The Tizen implementation of flutter_tts plugin. homepage: https://github.com/flutter-tizen/plugins repository: https://github.com/flutter-tizen/plugins/tree/main/packages/flutter_tts -version: 1.7.1 +version: 1.8.0 environment: sdk: ">=3.1.0 <4.0.0" diff --git a/packages/flutter_tts/tizen/src/flutter_tts_tizen_plugin.cc b/packages/flutter_tts/tizen/src/flutter_tts_tizen_plugin.cc index af1c50084..73bfdcb2d 100644 --- a/packages/flutter_tts/tizen/src/flutter_tts_tizen_plugin.cc +++ b/packages/flutter_tts/tizen/src/flutter_tts_tizen_plugin.cc @@ -128,6 +128,8 @@ class FlutterTtsTizenPlugin : public flutter::Plugin { OnGetDefaultVoice(); } else if (method_name == "setVoice") { OnSetVoice(arguments); + } else if (method_name == "clearVoice") { + OnClearVoice(); } else if (method_name == "getVoices") { OnGetVoices(); } else if (method_name == "getMaxSpeechInputLength") { @@ -262,6 +264,11 @@ class FlutterTtsTizenPlugin : public flutter::Plugin { SendResult(flutter::EncodableValue(0)); } + void OnClearVoice() { + tts_->ClearDefaultVoiceType(); + SendResult(flutter::EncodableValue(1)); + } + void OnGetVoices() { flutter::EncodableList list; for (auto voice : tts_->GetSupportedVoiceTypes()) { diff --git a/packages/flutter_tts/tizen/src/text_to_speech.h b/packages/flutter_tts/tizen/src/text_to_speech.h index 209b4b96a..50f5f8cbf 100644 --- a/packages/flutter_tts/tizen/src/text_to_speech.h +++ b/packages/flutter_tts/tizen/src/text_to_speech.h @@ -59,6 +59,8 @@ class TextToSpeech { void SetDefaultVoiceType(const std::string &voice); + void ClearDefaultVoiceType() { default_voice_type_ = TTS_VOICE_TYPE_AUTO; } + std::optional GetMaxSpeechInputLength(); std::optional GetState();