Browse Source

style(meeting): 优化暗黑模式下多处文本与图标颜色适配

- 为AI底部弹窗中的Markdown文本添加暗黑模式样式支持
- 统一会议模块多个视图中文字与图标颜色,适配暗黑和亮色模式
- 调整会议个人中心页面背景和头像控件颜色以匹配暗黑模式
- 修正底部弹窗“继续提问”等按钮颜色支持深浅主题
- 更新多处底部弹窗内图标颜色为暗黑模式下最佳匹配色
- 优化发言者列表等文本样式中灰色文字的明暗对比度
- 会议首页上传图标根据主题切换蓝色深浅色调
- 调整成员弹窗背景颜色,支持深色模式下的视觉一致性
weicu
lxm 7 months ago
parent
commit
2c4a34357b
  1. 37
      lib/modules/meeting/views/bottomSheet/ai_bottom_sheet.dart
  2. 14
      lib/modules/meeting/views/bottomSheet/generate_bottom_sheet.dart
  3. 2
      lib/modules/meeting/views/bottomSheet/share_bottom_sheet.dart
  4. 21
      lib/modules/meeting/views/bottomSheet/speaker_all_bottom_sheet.dart
  5. 6
      lib/modules/meeting/views/bottomSheet/speaker_bottom_sheet.dart
  6. 3
      lib/modules/meeting/views/meeting_home_view.dart
  7. 21
      lib/modules/meeting/views/meeting_mine_view.dart

37
lib/modules/meeting/views/bottomSheet/ai_bottom_sheet.dart

@ -190,6 +190,37 @@ class _AIBottomSheetState extends State<AIBottomSheet> {
alignment: Alignment.centerLeft, alignment: Alignment.centerLeft,
child: MarkdownBody( child: MarkdownBody(
data: data['assistant'], data: data['assistant'],
styleSheet: MarkdownStyleSheet(
p: TextStyle(
color: isDarkMode ? Colors.white : Colors.black87,
fontSize: 14.sp,
),
h1: TextStyle(
color: isDarkMode ? Colors.white : Colors.black87,
fontSize: 18.sp,
fontWeight: FontWeight.bold,
),
h2: TextStyle(
color: isDarkMode ? Colors.white : Colors.black87,
fontSize: 16.sp,
fontWeight: FontWeight.bold,
),
h3: TextStyle(
color: isDarkMode ? Colors.white : Colors.black87,
fontSize: 15.sp,
fontWeight: FontWeight.bold,
),
listBullet: TextStyle(
color: isDarkMode ? Colors.white : Colors.black87,
fontSize: 14.sp,
),
code: TextStyle(
color: isDarkMode ? Colors.white : Colors.black87,
backgroundColor:
isDarkMode ? Colors.grey[800] : Colors.grey[200],
fontSize: 12.sp,
),
),
), ),
), ),
if (list.isNotEmpty) if (list.isNotEmpty)
@ -203,7 +234,7 @@ class _AIBottomSheetState extends State<AIBottomSheet> {
child: Text( child: Text(
'continueAsk'.tr, //对应中文:继续提问 'continueAsk'.tr, //对应中文:继续提问
style: TextStyle( style: TextStyle(
color: Colors.grey, color: isDarkMode ? Colors.grey[500] : Colors.grey,
fontSize: 13.sp, fontSize: 13.sp,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
), ),
@ -268,13 +299,13 @@ class _AIBottomSheetState extends State<AIBottomSheet> {
Icon( Icon(
Icons.audio_file_outlined, Icons.audio_file_outlined,
size: 14.w, size: 14.w,
color: Colors.grey[500], color: isDarkMode ? Colors.grey[500] : Colors.grey[500],
), ),
2.horizontalSpace, 2.horizontalSpace,
Text( Text(
_controller.meetingData.value.title, _controller.meetingData.value.title,
style: TextStyle( style: TextStyle(
color: Colors.grey[500], color: isDarkMode ? Colors.grey[500] : Colors.grey[500],
fontSize: 12.sp, fontSize: 12.sp,
), ),
), ),

14
lib/modules/meeting/views/bottomSheet/generate_bottom_sheet.dart

@ -100,7 +100,7 @@ class _GenerateBottomSheetState extends State<GenerateBottomSheet> {
children: [ children: [
Icon( Icon(
Icons.audio_file_outlined, Icons.audio_file_outlined,
color: Colors.grey, color: isDarkMode ? Colors.grey[500] : Colors.grey,
size: 32.w, size: 32.w,
), ),
5.horizontalSpace, 5.horizontalSpace,
@ -119,7 +119,7 @@ class _GenerateBottomSheetState extends State<GenerateBottomSheet> {
'${_controller.meetingData.value.seconds}s', '${_controller.meetingData.value.seconds}s',
style: TextStyle( style: TextStyle(
fontSize: 12.sp, fontSize: 12.sp,
color: Colors.grey, color: isDarkMode ? Colors.grey[500] : Colors.grey,
), ),
), ),
], ],
@ -228,12 +228,12 @@ class _GenerateBottomSheetState extends State<GenerateBottomSheet> {
'viewAll'.tr, // 对应中文:查看全部 'viewAll'.tr, // 对应中文:查看全部
style: TextStyle( style: TextStyle(
fontSize: 12.sp, fontSize: 12.sp,
color: Colors.grey, color: isDarkMode ? Colors.grey[500] : Colors.grey,
), ),
), ),
const Icon( Icon(
Icons.keyboard_arrow_right, Icons.keyboard_arrow_right,
color: Colors.grey, color: isDarkMode ? Colors.grey[500] : Colors.grey,
) )
], ],
), ),
@ -429,7 +429,7 @@ class _GenerateBottomSheetState extends State<GenerateBottomSheet> {
padding: EdgeInsets.only(top: 5.w), padding: EdgeInsets.only(top: 5.w),
child: Icon( child: Icon(
_icons[data['icon']], _icons[data['icon']],
color: Colors.orange, color: isDarkMode ? Colors.orange[300] : Colors.orange,
size: 30.w, size: 30.w,
), ),
), ),
@ -577,7 +577,7 @@ class _GenerateBottomSheetState extends State<GenerateBottomSheet> {
value ?? '', value ?? '',
style: TextStyle( style: TextStyle(
fontSize: 12.sp, fontSize: 12.sp,
color: Colors.grey, color: isDarkMode ? Colors.grey[500] : Colors.grey,
), ),
), ),
Icon( Icon(

2
lib/modules/meeting/views/bottomSheet/share_bottom_sheet.dart

@ -44,7 +44,7 @@ class _ShareBottomSheetState extends State<ShareBottomSheet> {
children: [ children: [
Icon( Icon(
Icons.audio_file_outlined, Icons.audio_file_outlined,
color: Colors.grey, color: isDarkMode ? Colors.grey[500] : Colors.grey,
size: 32.w, size: 32.w,
), ),
5.horizontalSpace, 5.horizontalSpace,

21
lib/modules/meeting/views/bottomSheet/speaker_all_bottom_sheet.dart

@ -225,7 +225,9 @@ class _SpeakerAllBottomSheetState extends State<SpeakerAllBottomSheet> {
'recentlyUsedNames'.tr, // 对应中文:最近使用过的名称 'recentlyUsedNames'.tr, // 对应中文:最近使用过的名称
style: TextStyle( style: TextStyle(
fontSize: 12.sp, fontSize: 12.sp,
color: Colors.grey[600]!, color: isDarkMode
? Colors.grey[500]
: Colors.grey[600],
), ),
), ),
), ),
@ -277,7 +279,8 @@ class _SpeakerAllBottomSheetState extends State<SpeakerAllBottomSheet> {
'totalTime'.tr, // 对应中文:总计 'totalTime'.tr, // 对应中文:总计
style: TextStyle( style: TextStyle(
fontSize: 12.sp, fontSize: 12.sp,
color: Colors.grey, color:
isDarkMode ? Colors.grey[500] : Colors.grey,
), ),
), ),
5.horizontalSpace, 5.horizontalSpace,
@ -344,7 +347,9 @@ class _SpeakerAllBottomSheetState extends State<SpeakerAllBottomSheet> {
isUtc: true, isUtc: true,
), ),
style: TextStyle( style: TextStyle(
color: Colors.grey, color: isDarkMode
? Colors.grey[500]
: Colors.grey,
fontSize: 12.sp, fontSize: 12.sp,
), ),
), ),
@ -354,7 +359,9 @@ class _SpeakerAllBottomSheetState extends State<SpeakerAllBottomSheet> {
child: Text( child: Text(
'-', '-',
style: TextStyle( style: TextStyle(
color: Colors.grey, color: isDarkMode
? Colors.grey[500]
: Colors.grey,
fontSize: 12.sp, fontSize: 12.sp,
), ),
), ),
@ -366,7 +373,9 @@ class _SpeakerAllBottomSheetState extends State<SpeakerAllBottomSheet> {
isUtc: true, isUtc: true,
), ),
style: TextStyle( style: TextStyle(
color: Colors.grey, color: isDarkMode
? Colors.grey[500]
: Colors.grey,
fontSize: 12.sp, fontSize: 12.sp,
), ),
), ),
@ -456,7 +465,7 @@ class _SpeakerAllBottomSheetState extends State<SpeakerAllBottomSheet> {
.tr, // 对应中文:总结的发言者将自动更新 .tr, // 对应中文:总结的发言者将自动更新
style: TextStyle( style: TextStyle(
fontSize: 14.sp, fontSize: 14.sp,
color: Colors.grey[600], color: isDarkMode ? Colors.grey[500] : Colors.grey[600],
), ),
), ),
), ),

6
lib/modules/meeting/views/bottomSheet/speaker_bottom_sheet.dart

@ -166,7 +166,9 @@ class _SpeakerBottomSheetState extends State<SpeakerBottomSheet> {
'recentlyUsedNames'.tr, // 对应中文:最近使用过的名称 'recentlyUsedNames'.tr, // 对应中文:最近使用过的名称
style: TextStyle( style: TextStyle(
fontSize: 12.sp, fontSize: 12.sp,
color: Colors.grey[600]!, color: isDarkMode
? Colors.grey[500]
: Colors.grey[600],
), ),
), ),
GestureDetector( GestureDetector(
@ -268,7 +270,7 @@ class _SpeakerBottomSheetState extends State<SpeakerBottomSheet> {
description, description,
style: TextStyle( style: TextStyle(
fontSize: 10.sp, fontSize: 10.sp,
color: Colors.grey[500]!, color: isDarkMode ? Colors.grey[500] : Colors.grey[500],
), ),
), ),
], ],

3
lib/modules/meeting/views/meeting_home_view.dart

@ -396,7 +396,8 @@ class _MeetingHomeViewState extends State<MeetingHomeView>
uploadData['audiourl'].isNotEmpty uploadData['audiourl'].isNotEmpty
? Icons.cloud_done ? Icons.cloud_done
: Icons.cloud_upload, : Icons.cloud_upload,
color: Colors.blue, color:
isDarkMode ? Colors.lightBlue : Colors.blue,
size: 16.w, size: 16.w,
), ),
), ),

21
lib/modules/meeting/views/meeting_mine_view.dart

@ -137,8 +137,9 @@ class _MeetingMineViewState extends State<MeetingMineView>
margin: EdgeInsets.only(right: 10.w), margin: EdgeInsets.only(right: 10.w),
child: UnifiedAvatar( child: UnifiedAvatar(
radius: 25.w, radius: 25.w,
backgroundColor: Colors.grey[200], backgroundColor:
iconColor: Colors.grey[600], isDarkMode ? Colors.grey[700] : Colors.grey[200],
iconColor: isDarkMode ? Colors.grey[400] : Colors.grey[600],
iconSize: 25.r, iconSize: 25.r,
isDarkMode: isDarkMode, isDarkMode: isDarkMode,
), ),
@ -158,7 +159,7 @@ class _MeetingMineViewState extends State<MeetingMineView>
Icon( Icon(
Icons.arrow_forward_ios, Icons.arrow_forward_ios,
size: 16.w, size: 16.w,
color: Colors.grey[700], color: isDarkMode ? Colors.grey[500] : Colors.grey[700],
), ),
], ],
), ),
@ -275,7 +276,7 @@ class _MeetingMineViewState extends State<MeetingMineView>
unit, unit,
style: TextStyle( style: TextStyle(
height: 0.1, height: 0.1,
color: Colors.grey, color: isDarkMode ? Colors.grey[500] : Colors.grey,
fontSize: 10.sp, fontSize: 10.sp,
), ),
), ),
@ -314,7 +315,7 @@ class _MeetingMineViewState extends State<MeetingMineView>
Icon( Icon(
Icons.arrow_forward_ios, Icons.arrow_forward_ios,
size: 16.w, size: 16.w,
color: Colors.grey, color: isDarkMode ? Colors.grey[500] : Colors.grey,
), ),
], ],
), ),
@ -325,7 +326,8 @@ class _MeetingMineViewState extends State<MeetingMineView>
Get.bottomSheet( Get.bottomSheet(
const MemberBottomSheet(), const MemberBottomSheet(),
isScrollControlled: true, isScrollControlled: true,
backgroundColor: Colors.white, backgroundColor:
isDarkMode ? const Color(0xFF1A1A1A) : Colors.white,
shape: RoundedRectangleBorder( shape: RoundedRectangleBorder(
borderRadius: BorderRadius.vertical( borderRadius: BorderRadius.vertical(
top: Radius.circular(12.r), top: Radius.circular(12.r),
@ -336,7 +338,7 @@ class _MeetingMineViewState extends State<MeetingMineView>
child: Container( child: Container(
padding: EdgeInsets.symmetric(horizontal: 12.w, vertical: 15.w), padding: EdgeInsets.symmetric(horizontal: 12.w, vertical: 15.w),
decoration: BoxDecoration( decoration: BoxDecoration(
color: Colors.black87, color: isDarkMode ? const Color(0xFF2D2D2D) : Colors.black87,
borderRadius: BorderRadius.circular(16.w), borderRadius: BorderRadius.circular(16.w),
), ),
child: Column( child: Column(
@ -365,7 +367,8 @@ class _MeetingMineViewState extends State<MeetingMineView>
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
Text( Text(
'bindDeviceToActivate'.tr, // 对应中文:绑定 Voitrans 设备可激活 Starter 会员 'bindDeviceToActivate'
.tr, // 对应中文:绑定 Voitrans 设备可激活 Starter 会员
style: TextStyle( style: TextStyle(
color: Colors.white, color: Colors.white,
fontSize: 12.sp, fontSize: 12.sp,
@ -454,7 +457,7 @@ class _MeetingMineViewState extends State<MeetingMineView>
child: Text( child: Text(
description, description,
style: TextStyle( style: TextStyle(
color: Colors.grey, color: isDarkMode ? Colors.grey[500] : Colors.grey,
fontSize: 16.sp, fontSize: 16.sp,
), ),
), ),

Loading…
Cancel
Save