text to speech added.

main_design2.0
Sikander Saleem 2 years ago
parent 0f849a961d
commit cfa749ab74

@ -72,5 +72,48 @@
<true/> <true/>
<key>UIViewControllerBasedStatusBarAppearance</key> <key>UIViewControllerBasedStatusBarAppearance</key>
<false/> <false/>
<key>NSPrivacyTracking</key>
<false/>
<key>NSPrivacyTrackingDomains</key>
<array/>
<key>NSPrivacyCollectedDataTypes</key>
<array>
<dict/>
</array>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryFileTimestamp</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>C617.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategorySystemBootTime</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>35F9.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryDiskSpace</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>7D9E.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA92.1</string>
</array>
</dict>
</array>
</dict> </dict>
</plist> </plist>

@ -111,7 +111,7 @@ class _NewGasRefillRequestPageState extends State<NewGasRefillRequestPage> {
8.height, 8.height,
SingleItemDropDownMenu<Site, SiteProvider>( SingleItemDropDownMenu<Site, SiteProvider>(
context: context, context: context,
title: context.translation.destinationSite, title: context.translation.site,
initialValue: _gasModel.site, initialValue: _gasModel.site,
onSelect: (value) { onSelect: (value) {
setState(() { setState(() {

@ -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/images/multi_image_picker.dart';
import 'package:test_sa/views/widgets/loaders/loading_manager.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/sound/record_sound.dart';
import 'package:test_sa/views/widgets/speech_to_text/speech_to_text.dart';
import '../../../../models/lookup.dart'; import '../../../../models/lookup.dart';
import '../../../../new_views/app_style/app_color.dart'; import '../../../../new_views/app_style/app_color.dart';
@ -180,6 +181,10 @@ class CreateServiceRequestPageState extends State<CreateServiceRequestPage> {
child: context.translation.callComments.heading5(context), child: context.translation.callComments.heading5(context),
), ),
8.height, 8.height,
SpeechToTextButton(
controller: _commentController,
),
8.height,
AppTextFormField( AppTextFormField(
controller: _commentController, controller: _commentController,
labelText: context.translation.problemDesc, labelText: context.translation.problemDesc,

@ -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_recognition_result.dart';
import 'package:speech_to_text/speech_to_text.dart'; import 'package:speech_to_text/speech_to_text.dart';
import 'package:test_sa/controllers/providers/settings/setting_provider.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/app_style/sizing.dart';
import 'package:test_sa/views/widgets/buttons/app_icon_button2.dart'; import 'package:test_sa/views/widgets/buttons/app_icon_button2.dart';
import 'package:test_sa/views/widgets/titles/app_sub_title.dart'; import 'package:test_sa/views/widgets/titles/app_sub_title.dart';
@ -82,18 +85,26 @@ class _SpeechToTextButtonState extends State<SpeechToTextButton> {
return Container( return Container(
padding: const EdgeInsets.only(left: 12, right: 12), padding: const EdgeInsets.only(left: 12, right: 12),
decoration: BoxDecoration( decoration: BoxDecoration(
color: const Color(0xfff5f5f5), color: context.isDark && (widget.enabled == false)
border: Border.all( ? AppColor.neutral50
color: const Color(0xffefefef), : (widget.enabled == false)
), ? AppColor.neutral40
borderRadius: BorderRadius.circular(AppStyle.borderRadius * AppStyle.getScaleFactor(context)), : AppColor.background(context),
borderRadius: BorderRadius.circular(10),
boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)],
), ),
child: Row( child: Row(
children: [ 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 widget.controller.text.isNotEmpty && widget.enabled
? AIconButton2( ? AIconButton2(
iconData: Icons.delete, iconData: Icons.delete,
color: context.isDark ? Colors.white : Colors.black87,
onPressed: () { onPressed: () {
widget.controller.clear(); widget.controller.clear();
setState(() {}); setState(() {});

Loading…
Cancel
Save