From cfa749ab748ad344ef26924466db41a4fbd3a4d6 Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Wed, 27 Mar 2024 13:19:18 +0300 Subject: [PATCH] text to speech added. --- ios/Runner/Info.plist | 43 +++++++++++++++++++ .../pages/new_gas_refill_request_page.dart | 2 +- .../requests/create_service_request_page.dart | 5 +++ .../speech_to_text/speech_to_text.dart | 23 +++++++--- 4 files changed, 66 insertions(+), 7 deletions(-) diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index 05ec52f3..967d5d14 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -72,5 +72,48 @@ UIViewControllerBasedStatusBarAppearance + NSPrivacyTracking + + NSPrivacyTrackingDomains + + NSPrivacyCollectedDataTypes + + + + NSPrivacyAccessedAPITypes + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryFileTimestamp + NSPrivacyAccessedAPITypeReasons + + C617.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategorySystemBootTime + NSPrivacyAccessedAPITypeReasons + + 35F9.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryDiskSpace + NSPrivacyAccessedAPITypeReasons + + 7D9E.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryUserDefaults + NSPrivacyAccessedAPITypeReasons + + CA92.1 + + + diff --git a/lib/new_views/pages/new_gas_refill_request_page.dart b/lib/new_views/pages/new_gas_refill_request_page.dart index 5cbe4fe1..39c03895 100644 --- a/lib/new_views/pages/new_gas_refill_request_page.dart +++ b/lib/new_views/pages/new_gas_refill_request_page.dart @@ -111,7 +111,7 @@ class _NewGasRefillRequestPageState extends State { 8.height, SingleItemDropDownMenu( context: context, - title: context.translation.destinationSite, + title: context.translation.site, initialValue: _gasModel.site, onSelect: (value) { setState(() { diff --git a/lib/views/pages/user/requests/create_service_request_page.dart b/lib/views/pages/user/requests/create_service_request_page.dart index 29db3e0e..40a255e3 100644 --- a/lib/views/pages/user/requests/create_service_request_page.dart +++ b/lib/views/pages/user/requests/create_service_request_page.dart @@ -17,6 +17,7 @@ import 'package:test_sa/views/widgets/equipment/pick_asset.dart'; import 'package:test_sa/views/widgets/images/multi_image_picker.dart'; import 'package:test_sa/views/widgets/loaders/loading_manager.dart'; import 'package:test_sa/views/widgets/sound/record_sound.dart'; +import 'package:test_sa/views/widgets/speech_to_text/speech_to_text.dart'; import '../../../../models/lookup.dart'; import '../../../../new_views/app_style/app_color.dart'; @@ -180,6 +181,10 @@ class CreateServiceRequestPageState extends State { child: context.translation.callComments.heading5(context), ), 8.height, + SpeechToTextButton( + controller: _commentController, + ), + 8.height, AppTextFormField( controller: _commentController, labelText: context.translation.problemDesc, diff --git a/lib/views/widgets/speech_to_text/speech_to_text.dart b/lib/views/widgets/speech_to_text/speech_to_text.dart index 7d9e1d55..e221f7ba 100644 --- a/lib/views/widgets/speech_to_text/speech_to_text.dart +++ b/lib/views/widgets/speech_to_text/speech_to_text.dart @@ -5,6 +5,9 @@ import 'package:speech_to_text/speech_recognition_error.dart'; import 'package:speech_to_text/speech_recognition_result.dart'; import 'package:speech_to_text/speech_to_text.dart'; import 'package:test_sa/controllers/providers/settings/setting_provider.dart'; +import 'package:test_sa/extensions/context_extension.dart'; +import 'package:test_sa/new_views/app_style/app_color.dart'; +import 'package:test_sa/new_views/app_style/app_text_style.dart'; import 'package:test_sa/views/app_style/sizing.dart'; import 'package:test_sa/views/widgets/buttons/app_icon_button2.dart'; import 'package:test_sa/views/widgets/titles/app_sub_title.dart'; @@ -82,18 +85,26 @@ class _SpeechToTextButtonState extends State { return Container( padding: const EdgeInsets.only(left: 12, right: 12), decoration: BoxDecoration( - color: const Color(0xfff5f5f5), - border: Border.all( - color: const Color(0xffefefef), - ), - borderRadius: BorderRadius.circular(AppStyle.borderRadius * AppStyle.getScaleFactor(context)), + color: context.isDark && (widget.enabled == false) + ? AppColor.neutral50 + : (widget.enabled == false) + ? AppColor.neutral40 + : AppColor.background(context), + borderRadius: BorderRadius.circular(10), + boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)], ), child: Row( children: [ - widget.mini ? const SizedBox.shrink() : const ASubTitle("Speech To Text"), + widget.mini + ? const SizedBox.shrink() + : Text( + "Speech To Text", + style: Theme.of(context).textTheme.bodyLarge, + ), widget.controller.text.isNotEmpty && widget.enabled ? AIconButton2( iconData: Icons.delete, + color: context.isDark ? Colors.white : Colors.black87, onPressed: () { widget.controller.clear(); setState(() {});