1
|
Before Width: | Height: | Size: 5.7 KiB After Width: | Height: | Size: 4.6 KiB |
|
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 8.1 KiB After Width: | Height: | Size: 6.5 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 15 KiB |
BIN
assets/images/history_empty_state.gif
Normal file
|
After Width: | Height: | Size: 294 KiB |
BIN
assets/images/home_background.png
Normal file → Executable file
|
Before Width: | Height: | Size: 510 KiB After Width: | Height: | Size: 164 KiB |
|
Before Width: | Height: | Size: 625 B After Width: | Height: | Size: 560 B |
BIN
assets/images/home_more.png
Executable file → Normal file
|
Before Width: | Height: | Size: 963 B After Width: | Height: | Size: 786 B |
|
Before Width: | Height: | Size: 37 KiB |
BIN
assets/images/record_subscript.gif
Normal file
|
After Width: | Height: | Size: 337 KiB |
BIN
assets/images/setrring_subscript.gif
Normal file
|
After Width: | Height: | Size: 152 KiB |
BIN
assets/images/suspended_decoration.png
Executable file
|
After Width: | Height: | Size: 9.4 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 5.9 KiB |
|
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.3 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 10 KiB |
BIN
assets/launcher_icon/launcher_icon.png
Executable file → Normal file
|
Before Width: | Height: | Size: 201 KiB After Width: | Height: | Size: 586 KiB |
|
Before Width: | Height: | Size: 176 KiB After Width: | Height: | Size: 187 KiB |
|
After Width: | Height: | Size: 955 B |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
After Width: | Height: | Size: 6.0 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 5.3 KiB |
|
After Width: | Height: | Size: 8.5 KiB |
|
After Width: | Height: | Size: 3.0 KiB |
|
After Width: | Height: | Size: 6.8 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
After Width: | Height: | Size: 8.2 KiB |
|
After Width: | Height: | Size: 8.5 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 4.6 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 5.0 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 333 KiB |
|
Before Width: | Height: | Size: 113 KiB After Width: | Height: | Size: 546 KiB |
|
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 142 KiB |
@ -20,16 +20,19 @@ class Assets {
|
|||||||
static const String imagesDeleteIcon = 'assets/images/delete_icon.png';
|
static const String imagesDeleteIcon = 'assets/images/delete_icon.png';
|
||||||
static const String imagesExchangeLanguage = 'assets/images/exchange_language.png';
|
static const String imagesExchangeLanguage = 'assets/images/exchange_language.png';
|
||||||
static const String imagesFullScreen = 'assets/images/full_screen.png';
|
static const String imagesFullScreen = 'assets/images/full_screen.png';
|
||||||
|
static const String imagesHistoryEmptyState = 'assets/images/history_empty_state.gif';
|
||||||
static const String imagesHomeBackground = 'assets/images/home_background.png';
|
static const String imagesHomeBackground = 'assets/images/home_background.png';
|
||||||
static const String imagesHomeMicrophone = 'assets/images/home_microphone.png';
|
static const String imagesHomeMicrophone = 'assets/images/home_microphone.png';
|
||||||
static const String imagesHomeMore = 'assets/images/home_more.png';
|
static const String imagesHomeMore = 'assets/images/home_more.png';
|
||||||
static const String imagesMicrophoneIcon = 'assets/images/microphone_icon.png';
|
static const String imagesMicrophoneIcon = 'assets/images/microphone_icon.png';
|
||||||
static const String imagesRabbitEars = 'assets/images/rabbit_ears.png';
|
static const String imagesRabbitEars = 'assets/images/rabbit_ears.png';
|
||||||
static const String imagesRabbitSayGood = 'assets/images/rabbit_say_good.png';
|
static const String imagesRecordSubscript = 'assets/images/record_subscript.gif';
|
||||||
static const String imagesRotateIcon = 'assets/images/rotate_icon.png';
|
static const String imagesRotateIcon = 'assets/images/rotate_icon.png';
|
||||||
|
static const String imagesSetrringSubscript = 'assets/images/setrring_subscript.gif';
|
||||||
static const String imagesSpeakFace = 'assets/images/speak_face.png';
|
static const String imagesSpeakFace = 'assets/images/speak_face.png';
|
||||||
static const String imagesSpeakerIcon = 'assets/images/speaker_icon.png';
|
static const String imagesSpeakerIcon = 'assets/images/speaker_icon.png';
|
||||||
static const String imagesStarGreen = 'assets/images/star_green.png';
|
static const String imagesStarGreen = 'assets/images/star_green.png';
|
||||||
|
static const String imagesSuspendedDecoration = 'assets/images/suspended_decoration.png';
|
||||||
static const String imagesTitleBackground = 'assets/images/title_background.png';
|
static const String imagesTitleBackground = 'assets/images/title_background.png';
|
||||||
static const String imagesToolsDialog = 'assets/images/tools_dialog.png';
|
static const String imagesToolsDialog = 'assets/images/tools_dialog.png';
|
||||||
static const String imagesToolsHistory = 'assets/images/tools_history.png';
|
static const String imagesToolsHistory = 'assets/images/tools_history.png';
|
||||||
|
|||||||
@ -1,4 +1,7 @@
|
|||||||
|
import 'dart:ui';
|
||||||
|
|
||||||
class GlobalConfig {
|
class GlobalConfig {
|
||||||
static const appName = 'TransLark';
|
static const appName = 'TransGlobe';
|
||||||
|
static const appColor = Color(0xffFF5122);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:trans_lark/generated/assets.dart';
|
import 'package:trans_lark/generated/assets.dart';
|
||||||
|
import 'package:trans_lark/global/global_config.dart';
|
||||||
import 'package:trans_lark/page/index/index_controller.dart';
|
import 'package:trans_lark/page/index/index_controller.dart';
|
||||||
import 'package:trans_lark/util/t_object_utils.dart';
|
import 'package:trans_lark/util/t_object_utils.dart';
|
||||||
import 'package:trans_lark/widget/t_language_bar_widget.dart';
|
import 'package:trans_lark/widget/t_language_bar_widget.dart';
|
||||||
@ -25,7 +26,7 @@ class IndexView extends StatelessWidget {
|
|||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
_buildHead(),
|
_buildHead(),
|
||||||
Expanded(child: Container()),
|
const SizedBox(height: 42),
|
||||||
_buildDailyQuote(),
|
_buildDailyQuote(),
|
||||||
Expanded(child: Container()),
|
Expanded(child: Container()),
|
||||||
_buildTools(),
|
_buildTools(),
|
||||||
@ -44,34 +45,30 @@ class IndexView extends StatelessWidget {
|
|||||||
child: Row(
|
child: Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
children: [
|
children: [
|
||||||
Container(
|
GestureDetector(
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 20),
|
onTap: logic.openSettingsBottomSheet,
|
||||||
decoration: const BoxDecoration(
|
child: Container(
|
||||||
image: DecorationImage(
|
width: 36,
|
||||||
image: AssetImage(
|
height: 36,
|
||||||
Assets.imagesTitleBackground,
|
padding: const EdgeInsets.all(6.5),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: GlobalConfig.appColor,
|
||||||
|
borderRadius: BorderRadius.circular(36),
|
||||||
|
),
|
||||||
|
child: Image.asset(
|
||||||
|
Assets.imagesHomeMore,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
child: const Text(
|
const Text(
|
||||||
"Instant Translator",
|
GlobalConfig.appName,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: Color(0xff1E1E1E),
|
color: Color(0xff1E1E1E),
|
||||||
fontSize: 24,
|
fontSize: 24,
|
||||||
fontWeight: FontWeight.w700,
|
fontWeight: FontWeight.w700,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
const SizedBox(width: 36),
|
||||||
GestureDetector(
|
|
||||||
onTap: logic.openSettingsBottomSheet,
|
|
||||||
child: ClipOval(
|
|
||||||
child: Image.asset(
|
|
||||||
Assets.imagesHomeMore,
|
|
||||||
width: 32,
|
|
||||||
height: 32,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
@ -80,34 +77,19 @@ class IndexView extends StatelessWidget {
|
|||||||
Widget _buildDailyQuote() {
|
Widget _buildDailyQuote() {
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: logic.toSceneCategory,
|
onTap: logic.toSceneCategory,
|
||||||
child: Container(
|
child: Column(
|
||||||
decoration: BoxDecoration(
|
children: [
|
||||||
border: Border.all(
|
Container(
|
||||||
width: 1.5,
|
padding: const EdgeInsets.only(top: 28, left: 22, bottom: 31),
|
||||||
color: const Color(0xff3AAA72),
|
decoration: const BoxDecoration(
|
||||||
|
color: Color(0xffBFE9D4),
|
||||||
|
borderRadius: BorderRadius.only(
|
||||||
|
topLeft: Radius.circular(16),
|
||||||
|
topRight: Radius.circular(16),
|
||||||
),
|
),
|
||||||
color: const Color(0xff78dfa8),
|
|
||||||
borderRadius: BorderRadius.circular(16),
|
|
||||||
),
|
),
|
||||||
child: Stack(
|
child: Stack(
|
||||||
clipBehavior: Clip.none,
|
clipBehavior: Clip.none,
|
||||||
children: [
|
|
||||||
Positioned(
|
|
||||||
top: 16,
|
|
||||||
right: 31,
|
|
||||||
left: 31,
|
|
||||||
child: Image.asset(
|
|
||||||
Assets.imagesDailyQuoteBackground,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
Column(
|
|
||||||
children: [
|
|
||||||
Container(
|
|
||||||
padding: const EdgeInsets.symmetric(
|
|
||||||
horizontal: 30,
|
|
||||||
vertical: 15,
|
|
||||||
),
|
|
||||||
child: Stack(
|
|
||||||
alignment: AlignmentDirectional.bottomStart,
|
alignment: AlignmentDirectional.bottomStart,
|
||||||
children: [
|
children: [
|
||||||
Positioned(
|
Positioned(
|
||||||
@ -116,7 +98,7 @@ class IndexView extends StatelessWidget {
|
|||||||
width: 73,
|
width: 73,
|
||||||
height: 7,
|
height: 7,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: const Color(0xfffff0a0),
|
color: const Color(0xff5CC2AD),
|
||||||
borderRadius: BorderRadius.circular(16),
|
borderRadius: BorderRadius.circular(16),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@ -129,19 +111,29 @@ class IndexView extends StatelessWidget {
|
|||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
fontWeight: FontWeight.w800,
|
fontWeight: FontWeight.w800,
|
||||||
fontStyle: FontStyle.italic,
|
fontStyle: FontStyle.italic,
|
||||||
color: Colors.white,
|
color: Color(0xff240F69),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
Container(
|
Container(
|
||||||
margin: const EdgeInsets.only(left: 5),
|
margin: const EdgeInsets.only(left: 5),
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesArrowRight,
|
Assets.imagesArrowRight,
|
||||||
width: 10,
|
color: const Color(0xff240F69),
|
||||||
height: 10,
|
width: 14,
|
||||||
|
height: 14,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
)
|
),
|
||||||
|
Positioned(
|
||||||
|
right: -20,
|
||||||
|
bottom: -31,
|
||||||
|
child: Image.asset(
|
||||||
|
Assets.imagesSuspendedDecoration,
|
||||||
|
width: 211.41,
|
||||||
|
height: 99.14,
|
||||||
|
),
|
||||||
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@ -152,15 +144,12 @@ class IndexView extends StatelessWidget {
|
|||||||
height: 168,
|
height: 168,
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 20),
|
padding: const EdgeInsets.symmetric(horizontal: 20),
|
||||||
alignment: Alignment.center,
|
alignment: Alignment.center,
|
||||||
decoration: BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
border: const Border(
|
|
||||||
top: BorderSide(
|
|
||||||
width: 1.5,
|
|
||||||
color: Color(0xff1AB069),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
borderRadius: BorderRadius.circular(16),
|
borderRadius: BorderRadius.only(
|
||||||
|
bottomLeft: Radius.circular(16),
|
||||||
|
bottomRight: Radius.circular(16),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
@ -172,8 +161,7 @@ class IndexView extends StatelessWidget {
|
|||||||
Obx(() {
|
Obx(() {
|
||||||
return Text(
|
return Text(
|
||||||
logic.fromLanguage.value != null
|
logic.fromLanguage.value != null
|
||||||
? logic
|
? logic.fromLanguage.value!.languageName
|
||||||
.fromLanguage.value!.languageName
|
|
||||||
: '',
|
: '',
|
||||||
style: const TextStyle(
|
style: const TextStyle(
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
@ -183,14 +171,12 @@ class IndexView extends StatelessWidget {
|
|||||||
}),
|
}),
|
||||||
const SizedBox(height: 9),
|
const SizedBox(height: 9),
|
||||||
Row(
|
Row(
|
||||||
mainAxisAlignment:
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
MainAxisAlignment.spaceBetween,
|
|
||||||
children: [
|
children: [
|
||||||
Expanded(
|
Expanded(
|
||||||
child: Obx(() {
|
child: Obx(() {
|
||||||
return Text(
|
return Text(
|
||||||
TObjectUtils.getStr(
|
TObjectUtils.getStr(logic.fromStr.value),
|
||||||
logic.fromStr.value),
|
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
style: const TextStyle(
|
style: const TextStyle(
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
@ -201,16 +187,14 @@ class IndexView extends StatelessWidget {
|
|||||||
}),
|
}),
|
||||||
),
|
),
|
||||||
GestureDetector(
|
GestureDetector(
|
||||||
onTap: () =>
|
onTap: () => logic.translatorTtsPlay(true),
|
||||||
logic.translatorTtsPlay(true),
|
|
||||||
child: Container(
|
child: Container(
|
||||||
width: 24,
|
width: 24,
|
||||||
height: 24,
|
height: 24,
|
||||||
padding: const EdgeInsets.all(3),
|
padding: const EdgeInsets.all(3),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: const Color(0xff4ECA8C),
|
color: GlobalConfig.appColor,
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(12)),
|
||||||
BorderRadius.circular(12)),
|
|
||||||
child: FittedBox(
|
child: FittedBox(
|
||||||
fit: BoxFit.none,
|
fit: BoxFit.none,
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
@ -245,14 +229,12 @@ class IndexView extends StatelessWidget {
|
|||||||
}),
|
}),
|
||||||
const SizedBox(height: 9),
|
const SizedBox(height: 9),
|
||||||
Row(
|
Row(
|
||||||
mainAxisAlignment:
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
MainAxisAlignment.spaceBetween,
|
|
||||||
children: [
|
children: [
|
||||||
Expanded(
|
Expanded(
|
||||||
child: Obx(() {
|
child: Obx(() {
|
||||||
return Text(
|
return Text(
|
||||||
TObjectUtils.getStr(
|
TObjectUtils.getStr(logic.toStr.value),
|
||||||
logic.toStr.value),
|
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
style: const TextStyle(
|
style: const TextStyle(
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
@ -263,16 +245,14 @@ class IndexView extends StatelessWidget {
|
|||||||
}),
|
}),
|
||||||
),
|
),
|
||||||
GestureDetector(
|
GestureDetector(
|
||||||
onTap: () =>
|
onTap: () => logic.translatorTtsPlay(false),
|
||||||
logic.translatorTtsPlay(false),
|
|
||||||
child: Container(
|
child: Container(
|
||||||
width: 24,
|
width: 24,
|
||||||
height: 24,
|
height: 24,
|
||||||
padding: const EdgeInsets.all(3),
|
padding: const EdgeInsets.all(3),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: const Color(0xff4ECA8C),
|
color: GlobalConfig.appColor,
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(12),
|
||||||
BorderRadius.circular(12),
|
|
||||||
),
|
),
|
||||||
child: FittedBox(
|
child: FittedBox(
|
||||||
fit: BoxFit.none,
|
fit: BoxFit.none,
|
||||||
@ -296,18 +276,6 @@ class IndexView extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
Positioned(
|
|
||||||
top: -22,
|
|
||||||
right: 5,
|
|
||||||
child: Image.asset(
|
|
||||||
Assets.imagesRabbitSayGood,
|
|
||||||
width: 137,
|
|
||||||
height: 115,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
),
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -323,10 +291,10 @@ class IndexView extends StatelessWidget {
|
|||||||
child: Container(
|
child: Container(
|
||||||
width: 72,
|
width: 72,
|
||||||
height: 72,
|
height: 72,
|
||||||
padding: const EdgeInsets.all(12),
|
padding: const EdgeInsets.all(10),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: const Color(0xffD2FFFB),
|
color: Colors.white,
|
||||||
borderRadius: BorderRadius.circular(24),
|
borderRadius: BorderRadius.circular(72),
|
||||||
),
|
),
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesToolsPhoto,
|
Assets.imagesToolsPhoto,
|
||||||
@ -354,10 +322,10 @@ class IndexView extends StatelessWidget {
|
|||||||
child: Container(
|
child: Container(
|
||||||
width: 72,
|
width: 72,
|
||||||
height: 72,
|
height: 72,
|
||||||
padding: const EdgeInsets.all(12),
|
padding: const EdgeInsets.all(10),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: const Color(0xffE1E2FE),
|
color: Colors.white,
|
||||||
borderRadius: BorderRadius.circular(24),
|
borderRadius: BorderRadius.circular(72),
|
||||||
),
|
),
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesToolsDialog,
|
Assets.imagesToolsDialog,
|
||||||
@ -385,10 +353,10 @@ class IndexView extends StatelessWidget {
|
|||||||
child: Container(
|
child: Container(
|
||||||
width: 72,
|
width: 72,
|
||||||
height: 72,
|
height: 72,
|
||||||
padding: const EdgeInsets.all(12),
|
padding: const EdgeInsets.all(10),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: const Color(0xffFEE5C5),
|
color: Colors.white,
|
||||||
borderRadius: BorderRadius.circular(24),
|
borderRadius: BorderRadius.circular(72),
|
||||||
),
|
),
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesToolsHistory,
|
Assets.imagesToolsHistory,
|
||||||
@ -422,9 +390,8 @@ class IndexView extends StatelessWidget {
|
|||||||
height: 91,
|
height: 91,
|
||||||
alignment: Alignment.center,
|
alignment: Alignment.center,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: const Color(0xff7678ef),
|
color: GlobalConfig.appColor,
|
||||||
borderRadius: BorderRadius.circular(28),
|
borderRadius: BorderRadius.circular(22),
|
||||||
border: Border.all(width: 1.5, color: const Color(0xff5153c0)),
|
|
||||||
),
|
),
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
@ -442,17 +409,15 @@ class IndexView extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(
|
padding: const EdgeInsets.only(right: 20),
|
||||||
right: 20,
|
|
||||||
),
|
|
||||||
child: GestureDetector(
|
child: GestureDetector(
|
||||||
onTap: logic.onTapSpeak,
|
onTap: logic.onTapSpeak,
|
||||||
child: Container(
|
child: Container(
|
||||||
height: 36,
|
height: 36,
|
||||||
width: 36,
|
width: 36,
|
||||||
padding: const EdgeInsets.all(5),
|
padding: const EdgeInsets.all(7),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: const Color(0xff5153c0),
|
color: Colors.white,
|
||||||
borderRadius: BorderRadius.circular(18),
|
borderRadius: BorderRadius.circular(18),
|
||||||
),
|
),
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
@ -467,6 +432,7 @@ class IndexView extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
const SizedBox(height: 20),
|
const SizedBox(height: 20),
|
||||||
const TLanguageBarWidget(),
|
const TLanguageBarWidget(),
|
||||||
|
const SizedBox(height: 20),
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,6 +2,7 @@ import 'package:flutter/cupertino.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:trans_lark/generated/assets.dart';
|
import 'package:trans_lark/generated/assets.dart';
|
||||||
|
import 'package:trans_lark/global/global_config.dart';
|
||||||
import 'package:trans_lark/global/speech_to_text_manager.dart';
|
import 'package:trans_lark/global/speech_to_text_manager.dart';
|
||||||
import 'package:trans_lark/page/p2p/p2p_controller.dart';
|
import 'package:trans_lark/page/p2p/p2p_controller.dart';
|
||||||
import 'package:trans_lark/util/t_object_utils.dart';
|
import 'package:trans_lark/util/t_object_utils.dart';
|
||||||
@ -76,8 +77,8 @@ class P2PView extends GetView<P2PController> {
|
|||||||
child: WaveWidget(
|
child: WaveWidget(
|
||||||
config: CustomConfig(
|
config: CustomConfig(
|
||||||
colors: [
|
colors: [
|
||||||
const Color(0xff45A7FE).withOpacity(0.2),
|
const Color(0xff87ECB3).withOpacity(0.2),
|
||||||
const Color(0xff45A7FE),
|
const Color(0xff87ECB3),
|
||||||
],
|
],
|
||||||
durations: [4000, 8000],
|
durations: [4000, 8000],
|
||||||
heightPercentages: [-0.08, -0.08],
|
heightPercentages: [-0.08, -0.08],
|
||||||
@ -92,7 +93,7 @@ class P2PView extends GetView<P2PController> {
|
|||||||
: Container(
|
: Container(
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
height: double.infinity,
|
height: double.infinity,
|
||||||
color: const Color(0xff45A7FE),
|
color: const Color(0xff87ECB3),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
@ -182,8 +183,8 @@ class P2PView extends GetView<P2PController> {
|
|||||||
? WaveWidget(
|
? WaveWidget(
|
||||||
config: CustomConfig(
|
config: CustomConfig(
|
||||||
colors: [
|
colors: [
|
||||||
const Color(0xff87ECB3).withOpacity(0.2),
|
GlobalConfig.appColor.withOpacity(0.2),
|
||||||
const Color(0xff87ECB3),
|
GlobalConfig.appColor,
|
||||||
],
|
],
|
||||||
durations: [4000, 8000],
|
durations: [4000, 8000],
|
||||||
heightPercentages: [-0.08, -0.08],
|
heightPercentages: [-0.08, -0.08],
|
||||||
@ -197,7 +198,7 @@ class P2PView extends GetView<P2PController> {
|
|||||||
: Container(
|
: Container(
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
height: double.infinity,
|
height: double.infinity,
|
||||||
color: const Color(0xff87ECB3),
|
color: GlobalConfig.appColor,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
|
|||||||
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:trans_lark/entity/scene_entity.dart';
|
import 'package:trans_lark/entity/scene_entity.dart';
|
||||||
import 'package:trans_lark/generated/assets.dart';
|
import 'package:trans_lark/generated/assets.dart';
|
||||||
|
import 'package:trans_lark/global/global_config.dart';
|
||||||
import 'package:trans_lark/page/scene_category_item/scene_category_item_controller.dart';
|
import 'package:trans_lark/page/scene_category_item/scene_category_item_controller.dart';
|
||||||
import 'package:trans_lark/widget/t_base_appbar_widget.dart';
|
import 'package:trans_lark/widget/t_base_appbar_widget.dart';
|
||||||
import 'package:trans_lark/widget/t_base_scrollbar_widget.dart';
|
import 'package:trans_lark/widget/t_base_scrollbar_widget.dart';
|
||||||
@ -108,12 +109,12 @@ class SceneCategoryItemView extends GetView<SceneCategoryItemController> {
|
|||||||
child: Container(
|
child: Container(
|
||||||
width: 24,
|
width: 24,
|
||||||
height: 24,
|
height: 24,
|
||||||
color: const Color.fromRGBO(78, 202, 140, 0.20),
|
color: GlobalConfig.appColor.withOpacity(.2),
|
||||||
child: FittedBox(
|
child: FittedBox(
|
||||||
fit: BoxFit.none,
|
fit: BoxFit.none,
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesSpeakerIcon,
|
Assets.imagesSpeakerIcon,
|
||||||
color: const Color(0xff4ECA8C),
|
color: GlobalConfig.appColor,
|
||||||
width: 16,
|
width: 16,
|
||||||
height: 16,
|
height: 16,
|
||||||
),
|
),
|
||||||
|
|||||||
@ -34,7 +34,7 @@ class SettingsWidget extends StatelessWidget {
|
|||||||
Image.asset(
|
Image.asset(
|
||||||
Assets.imagesHomeBackground,
|
Assets.imagesHomeBackground,
|
||||||
width: MediaQuery.of(context).size.width,
|
width: MediaQuery.of(context).size.width,
|
||||||
height: 384,
|
height: double.infinity,
|
||||||
fit: BoxFit.fitWidth,
|
fit: BoxFit.fitWidth,
|
||||||
),
|
),
|
||||||
Column(
|
Column(
|
||||||
@ -92,9 +92,9 @@ class SettingsWidget extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
_buildSettingItems(),
|
_buildSettingItems(),
|
||||||
Image.asset(
|
Image.asset(
|
||||||
Assets.imagesRabbitSayGood,
|
Assets.imagesSetrringSubscript,
|
||||||
width: 90,
|
width: 136,
|
||||||
height: 90,
|
height: 136,
|
||||||
fit: BoxFit.cover,
|
fit: BoxFit.cover,
|
||||||
),
|
),
|
||||||
const SizedBox(height: 58),
|
const SizedBox(height: 58),
|
||||||
|
|||||||
@ -2,6 +2,7 @@ import 'package:custom_pop_up_menu/custom_pop_up_menu.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:trans_lark/generated/assets.dart';
|
import 'package:trans_lark/generated/assets.dart';
|
||||||
|
import 'package:trans_lark/global/global_config.dart';
|
||||||
import 'package:trans_lark/page/translator/translator_controller.dart';
|
import 'package:trans_lark/page/translator/translator_controller.dart';
|
||||||
import 'package:trans_lark/util/t_object_utils.dart';
|
import 'package:trans_lark/util/t_object_utils.dart';
|
||||||
import 'package:trans_lark/widget/t_base_appbar_widget.dart';
|
import 'package:trans_lark/widget/t_base_appbar_widget.dart';
|
||||||
@ -24,10 +25,9 @@ class TranslatorView extends GetView<TranslatorController> {
|
|||||||
children: [
|
children: [
|
||||||
const SizedBox(height: 20),
|
const SizedBox(height: 20),
|
||||||
Container(
|
Container(
|
||||||
decoration: BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
border: Border.all(width: 1.5, color: const Color(0xff0087FF)),
|
color: GlobalConfig.appColor,
|
||||||
color: const Color(0xff45A7FE),
|
borderRadius: BorderRadius.all(Radius.circular(16)),
|
||||||
borderRadius: const BorderRadius.all(Radius.circular(16)),
|
|
||||||
),
|
),
|
||||||
child: Row(
|
child: Row(
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
@ -74,7 +74,7 @@ class TranslatorView extends GetView<TranslatorController> {
|
|||||||
replacement: Container(
|
replacement: Container(
|
||||||
width: 36,
|
width: 36,
|
||||||
height: 36,
|
height: 36,
|
||||||
color: const Color(0xff8BCFFE),
|
color: Colors.white,
|
||||||
child: FittedBox(
|
child: FittedBox(
|
||||||
fit: BoxFit.none,
|
fit: BoxFit.none,
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
@ -208,15 +208,7 @@ class TranslatorView extends GetView<TranslatorController> {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
: Expanded(
|
: Expanded(child: Container()),
|
||||||
child: Center(
|
|
||||||
child: Image.asset(
|
|
||||||
Assets.imagesRabbitSayGood,
|
|
||||||
width: 90,
|
|
||||||
height: 90,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:trans_lark/generated/assets.dart';
|
import 'package:trans_lark/generated/assets.dart';
|
||||||
|
import 'package:trans_lark/global/global_config.dart';
|
||||||
import 'package:trans_lark/page/translator_record/translator_record_controller.dart';
|
import 'package:trans_lark/page/translator_record/translator_record_controller.dart';
|
||||||
import 'package:trans_lark/util/t_object_utils.dart';
|
import 'package:trans_lark/util/t_object_utils.dart';
|
||||||
import 'package:trans_lark/widget/t_base_appbar_widget.dart';
|
import 'package:trans_lark/widget/t_base_appbar_widget.dart';
|
||||||
@ -23,9 +24,9 @@ class TranslatorRecordView extends GetView<TranslatorRecordController> {
|
|||||||
if (controller.historyList.isNotEmpty) return _buildHistoryList();
|
if (controller.historyList.isNotEmpty) return _buildHistoryList();
|
||||||
return Center(
|
return Center(
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesRabbitSayGood,
|
Assets.imagesHistoryEmptyState,
|
||||||
width: 90,
|
width: 168,
|
||||||
height: 90,
|
height: 168,
|
||||||
fit: BoxFit.cover,
|
fit: BoxFit.cover,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
@ -35,12 +36,12 @@ class TranslatorRecordView extends GetView<TranslatorRecordController> {
|
|||||||
return Visibility(
|
return Visibility(
|
||||||
visible: controller.historyList.isNotEmpty,
|
visible: controller.historyList.isNotEmpty,
|
||||||
child: Positioned(
|
child: Positioned(
|
||||||
top: 59,
|
top: 44,
|
||||||
right: 23,
|
right: 20,
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesRabbitSayGood,
|
Assets.imagesRecordSubscript,
|
||||||
width: 90,
|
width: 96,
|
||||||
height: 90,
|
height: 96,
|
||||||
fit: BoxFit.cover,
|
fit: BoxFit.cover,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@ -87,7 +88,7 @@ class TranslatorRecordView extends GetView<TranslatorRecordController> {
|
|||||||
onDismissed: (_) =>
|
onDismissed: (_) =>
|
||||||
controller.deleteHistoryItem(map.key, item, index),
|
controller.deleteHistoryItem(map.key, item, index),
|
||||||
background: Container(
|
background: Container(
|
||||||
color: const Color(0xffFF98BC),
|
color: const Color(0xffFC6C6B),
|
||||||
child: Stack(
|
child: Stack(
|
||||||
children: [
|
children: [
|
||||||
Positioned(
|
Positioned(
|
||||||
@ -105,7 +106,7 @@ class TranslatorRecordView extends GetView<TranslatorRecordController> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
secondaryBackground: Container(
|
secondaryBackground: Container(
|
||||||
color: const Color(0xffFF98BC),
|
color: const Color(0xffFC6C6B),
|
||||||
child: Stack(
|
child: Stack(
|
||||||
children: [
|
children: [
|
||||||
Positioned(
|
Positioned(
|
||||||
@ -134,7 +135,7 @@ class TranslatorRecordView extends GetView<TranslatorRecordController> {
|
|||||||
child: Container(
|
child: Container(
|
||||||
width: 32,
|
width: 32,
|
||||||
height: 32,
|
height: 32,
|
||||||
color: const Color(0xff4ECA8C),
|
color: GlobalConfig.appColor,
|
||||||
child: FittedBox(
|
child: FittedBox(
|
||||||
fit: BoxFit.none,
|
fit: BoxFit.none,
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:trans_lark/generated/assets.dart';
|
import 'package:trans_lark/generated/assets.dart';
|
||||||
|
import 'package:trans_lark/global/global_config.dart';
|
||||||
import 'package:trans_lark/global/translate_manager.dart';
|
import 'package:trans_lark/global/translate_manager.dart';
|
||||||
import 'package:trans_lark/page/translator_result/translator_result_controller.dart';
|
import 'package:trans_lark/page/translator_result/translator_result_controller.dart';
|
||||||
import 'package:trans_lark/util/t_object_utils.dart';
|
import 'package:trans_lark/util/t_object_utils.dart';
|
||||||
@ -98,12 +99,12 @@ class TranslatorResultView extends GetView<TranslatorResultController> {
|
|||||||
child: Container(
|
child: Container(
|
||||||
width: 32,
|
width: 32,
|
||||||
height: 32,
|
height: 32,
|
||||||
color: const Color.fromRGBO(78, 202, 140, 0.20),
|
color: GlobalConfig.appColor,
|
||||||
child: FittedBox(
|
child: FittedBox(
|
||||||
fit: BoxFit.none,
|
fit: BoxFit.none,
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesSpeakerIcon,
|
Assets.imagesSpeakerIcon,
|
||||||
color: const Color(0xff4ECA8C),
|
color: Colors.white,
|
||||||
width: 20,
|
width: 20,
|
||||||
height: 20,
|
height: 20,
|
||||||
),
|
),
|
||||||
@ -151,7 +152,7 @@ class TranslatorResultView extends GetView<TranslatorResultController> {
|
|||||||
height: 20,
|
height: 20,
|
||||||
child: CircularProgressIndicator(
|
child: CircularProgressIndicator(
|
||||||
strokeWidth: 2,
|
strokeWidth: 2,
|
||||||
color: Color(0xff4ECA8C),
|
color: GlobalConfig.appColor,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@ -186,12 +187,12 @@ class TranslatorResultView extends GetView<TranslatorResultController> {
|
|||||||
child: Container(
|
child: Container(
|
||||||
width: 32,
|
width: 32,
|
||||||
height: 32,
|
height: 32,
|
||||||
color: const Color.fromRGBO(78, 202, 140, 0.20),
|
color: GlobalConfig.appColor,
|
||||||
child: FittedBox(
|
child: FittedBox(
|
||||||
fit: BoxFit.none,
|
fit: BoxFit.none,
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesSpeakerIcon,
|
Assets.imagesSpeakerIcon,
|
||||||
color: const Color(0xff4ECA8C),
|
color: Colors.white,
|
||||||
width: 20,
|
width: 20,
|
||||||
height: 20,
|
height: 20,
|
||||||
),
|
),
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:trans_lark/generated/assets.dart';
|
import 'package:trans_lark/generated/assets.dart';
|
||||||
|
import 'package:trans_lark/global/global_config.dart';
|
||||||
import 'package:trans_lark/global/translate_manager.dart';
|
import 'package:trans_lark/global/translate_manager.dart';
|
||||||
import 'package:trans_lark/widget/t_language_bottom_sheet.dart';
|
import 'package:trans_lark/widget/t_language_bottom_sheet.dart';
|
||||||
|
|
||||||
@ -44,7 +45,7 @@ class TLanguageBarWidget extends StatelessWidget {
|
|||||||
.isSelectFromLanguage
|
.isSelectFromLanguage
|
||||||
.value
|
.value
|
||||||
? const Color(0xff435561)
|
? const Color(0xff435561)
|
||||||
: const Color(0xff4ECA8C),
|
: GlobalConfig.appColor,
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
@ -71,7 +72,7 @@ class TLanguageBarWidget extends StatelessWidget {
|
|||||||
width: 26,
|
width: 26,
|
||||||
height: 18,
|
height: 18,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: const Color(0xffF1F1F1),
|
color: const Color(0xfff1f1f1),
|
||||||
borderRadius: BorderRadius.circular(9),
|
borderRadius: BorderRadius.circular(9),
|
||||||
),
|
),
|
||||||
child: FittedBox(
|
child: FittedBox(
|
||||||
@ -109,7 +110,7 @@ class TLanguageBarWidget extends StatelessWidget {
|
|||||||
.isSelectFromLanguage
|
.isSelectFromLanguage
|
||||||
.value
|
.value
|
||||||
? const Color(0xff435561)
|
? const Color(0xff435561)
|
||||||
: const Color(0xff4ECA8C),
|
: GlobalConfig.appColor,
|
||||||
fontSize: 14,
|
fontSize: 14,
|
||||||
fontWeight: FontWeight.w500,
|
fontWeight: FontWeight.w500,
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
|
|||||||
@ -3,6 +3,7 @@ import 'package:get/get.dart';
|
|||||||
import 'package:get/get_state_manager/get_state_manager.dart';
|
import 'package:get/get_state_manager/get_state_manager.dart';
|
||||||
import 'package:trans_lark/entity/language_entity.dart';
|
import 'package:trans_lark/entity/language_entity.dart';
|
||||||
import 'package:trans_lark/generated/assets.dart';
|
import 'package:trans_lark/generated/assets.dart';
|
||||||
|
import 'package:trans_lark/global/global_config.dart';
|
||||||
import 'package:trans_lark/global/translate_manager.dart';
|
import 'package:trans_lark/global/translate_manager.dart';
|
||||||
import 'package:trans_lark/page/index/index_controller.dart';
|
import 'package:trans_lark/page/index/index_controller.dart';
|
||||||
import 'package:trans_lark/widget/t_base_scrollbar_widget.dart';
|
import 'package:trans_lark/widget/t_base_scrollbar_widget.dart';
|
||||||
@ -75,14 +76,14 @@ class TLanguageBottomSheet extends StatelessWidget {
|
|||||||
.fromLanguageEntity
|
.fromLanguageEntity
|
||||||
.value
|
.value
|
||||||
.languageName
|
.languageName
|
||||||
? const Color(0xff4ECA8C)
|
? GlobalConfig.appColor
|
||||||
: const Color(0xff152A3D))
|
: const Color(0xff152A3D))
|
||||||
: (item.languageName ==
|
: (item.languageName ==
|
||||||
TranslateManager()
|
TranslateManager()
|
||||||
.toLanguageEntity
|
.toLanguageEntity
|
||||||
.value
|
.value
|
||||||
.languageName
|
.languageName
|
||||||
? const Color(0xff4ECA8C)
|
? GlobalConfig.appColor
|
||||||
: const Color(0xff152A3D)),
|
: const Color(0xff152A3D)),
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
@ -107,6 +108,7 @@ class TLanguageBottomSheet extends StatelessWidget {
|
|||||||
padding: const EdgeInsets.only(left: 10),
|
padding: const EdgeInsets.only(left: 10),
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesStarGreen,
|
Assets.imagesStarGreen,
|
||||||
|
color: GlobalConfig.appColor,
|
||||||
width: 16,
|
width: 16,
|
||||||
height: 16,
|
height: 16,
|
||||||
),
|
),
|
||||||
|
|||||||
@ -42,13 +42,14 @@ class TLanguageResultBarWidget extends StatelessWidget {
|
|||||||
width: 26,
|
width: 26,
|
||||||
height: 18,
|
height: 18,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Colors.white,
|
color: const Color(0xff7FD5AA),
|
||||||
borderRadius: BorderRadius.circular(9),
|
borderRadius: BorderRadius.circular(9),
|
||||||
),
|
),
|
||||||
child: FittedBox(
|
child: FittedBox(
|
||||||
fit: BoxFit.none,
|
fit: BoxFit.none,
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesExchangeLanguage,
|
Assets.imagesExchangeLanguage,
|
||||||
|
color: Colors.white,
|
||||||
width: 12,
|
width: 12,
|
||||||
height: 12,
|
height: 12,
|
||||||
),
|
),
|
||||||
|
|||||||
@ -3,6 +3,7 @@ import 'package:flutter/services.dart';
|
|||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:trans_lark/generated/assets.dart';
|
import 'package:trans_lark/generated/assets.dart';
|
||||||
import 'package:trans_lark/global/flutter_tts_manager.dart';
|
import 'package:trans_lark/global/flutter_tts_manager.dart';
|
||||||
|
import 'package:trans_lark/global/global_config.dart';
|
||||||
import 'package:trans_lark/global/translate_manager.dart';
|
import 'package:trans_lark/global/translate_manager.dart';
|
||||||
|
|
||||||
class TTranslateTextFullScreenPage extends StatefulWidget {
|
class TTranslateTextFullScreenPage extends StatefulWidget {
|
||||||
@ -42,7 +43,7 @@ class _TranslateTextFullScreenPageState
|
|||||||
body: Container(
|
body: Container(
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
height: double.infinity,
|
height: double.infinity,
|
||||||
color: const Color(0xff4ECA8C),
|
color: GlobalConfig.appColor,
|
||||||
child: SafeArea(
|
child: SafeArea(
|
||||||
child: Row(
|
child: Row(
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
@ -76,10 +77,11 @@ class _TranslateTextFullScreenPageState
|
|||||||
width: 32,
|
width: 32,
|
||||||
height: 32,
|
height: 32,
|
||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
|
padding: const EdgeInsets.all(6),
|
||||||
child: FittedBox(
|
child: FittedBox(
|
||||||
fit: BoxFit.none,
|
|
||||||
child: Image.asset(
|
child: Image.asset(
|
||||||
Assets.imagesSpeakerIcon,
|
Assets.imagesSpeakerIcon,
|
||||||
|
color: GlobalConfig.appColor,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||