Browse Source

refactor(meeting): 提取控制器删除逻辑并更新图标样式

将重复的控制器删除逻辑提取为独立方法_deleteControllerAfterPop
更新底部操作栏图标为圆角风格
调整底部间距从32.h改为42.h
newdev_shunjiawei
lxm 9 months ago
parent
commit
b20268bef8
  1. 36
      lib/modules/meeting/views/meeting_record_view.dart

36
lib/modules/meeting/views/meeting_record_view.dart

@ -16,6 +16,14 @@ enum _MeetingRecordExitAction {
class MeetingRecordView extends GetView<MeetingRecordController> {
const MeetingRecordView({super.key});
void _deleteControllerAfterPop() {
Future.delayed(const Duration(milliseconds: 400), () {
if (Get.isRegistered<MeetingRecordController>()) {
Get.delete<MeetingRecordController>(force: true);
}
});
}
Future<_MeetingRecordExitAction?> _showExitConfirmDialog(bool isDarkMode) {
return Get.dialog<_MeetingRecordExitAction>(
Dialog(
@ -191,11 +199,7 @@ class MeetingRecordView extends GetView<MeetingRecordController> {
if (!controller.isRecording.value) {
Get.back();
Future.microtask(() {
if (Get.isRegistered<MeetingRecordController>()) {
Get.delete<MeetingRecordController>(force: true);
}
});
_deleteControllerAfterPop();
return;
}
@ -209,20 +213,12 @@ class MeetingRecordView extends GetView<MeetingRecordController> {
await controller.saveTitleChange();
await controller.saveRecording();
Get.back(result: 'meeting_record_saved');
Future.microtask(() {
if (Get.isRegistered<MeetingRecordController>()) {
Get.delete<MeetingRecordController>(force: true);
}
});
_deleteControllerAfterPop();
return;
case _MeetingRecordExitAction.endWithoutSave:
await controller.discardRecording();
Get.back(result: 'meeting_record_discarded');
Future.microtask(() {
if (Get.isRegistered<MeetingRecordController>()) {
Get.delete<MeetingRecordController>(force: true);
}
});
_deleteControllerAfterPop();
return;
case _MeetingRecordExitAction.continueInBackground:
await controller.saveTitleChange();
@ -472,7 +468,7 @@ class MeetingRecordView extends GetView<MeetingRecordController> {
)),
const Spacer(),
_buildBottomBar(context, isDarkMode),
SizedBox(height: 32.h),
SizedBox(height: 42.h),
],
);
},
@ -490,7 +486,9 @@ class MeetingRecordView extends GetView<MeetingRecordController> {
_buildActionButton(
onTap: controller.toggleMarked,
child: Obx(() => Icon(
controller.isMarked.value ? Icons.star : Icons.star_border,
controller.isMarked.value
? Icons.star_rounded
: Icons.star_border_rounded,
size: 36.sp,
color:
controller.isMarked.value ? Colors.orange : Colors.grey,
@ -507,7 +505,7 @@ class MeetingRecordView extends GetView<MeetingRecordController> {
child: Obx(() => Icon(
controller.timerStatus.value == TimerStatus.running
? Icons.pause
: Icons.play_arrow,
: Icons.play_arrow_rounded,
size: 44.sp,
color: Colors.red,
)),
@ -521,7 +519,7 @@ class MeetingRecordView extends GetView<MeetingRecordController> {
_buildActionButton(
onTap: () => _bottomSheet(context, isDarkMode),
child: Icon(
Icons.check,
Icons.check_rounded,
size: 36.sp,
color: Colors.green,
),

Loading…
Cancel
Save