From b723529d7f0fbfd607564aa0df68d44e08ffa953 Mon Sep 17 00:00:00 2001 From: bggRGjQaUbCoE Date: Wed, 6 Aug 2025 14:29:51 +0800 Subject: [PATCH] tweak Signed-off-by: bggRGjQaUbCoE --- lib/main.dart | 9 ++++--- .../common/publish/common_publish_page.dart | 2 +- .../publish/common_rich_text_pub_page.dart | 23 +++++++++--------- lib/pages/live_room/controller.dart | 24 ++++++++++++------- lib/pages/setting/pages/display_mode.dart | 2 +- lib/utils/page_utils.dart | 8 ++++--- 6 files changed, 38 insertions(+), 30 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index 5c5d1375..aff41c61 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -145,15 +145,14 @@ class MyApp extends StatelessWidget { FlutterDisplayMode.supported.then((value) { modes = value; var storageDisplay = GStorage.setting.get(SettingBoxKey.displayMode); - DisplayMode f = DisplayMode.auto; + DisplayMode? displayMode; if (storageDisplay != null) { - f = modes.firstWhere( + displayMode = modes.firstWhereOrNull( (e) => e.toString() == storageDisplay, - orElse: () => f, ); } - DisplayMode preferred = modes.toList().firstWhere((el) => el == f); - FlutterDisplayMode.setPreferredMode(preferred); + displayMode ??= DisplayMode.auto; + FlutterDisplayMode.setPreferredMode(displayMode); }); } diff --git a/lib/pages/common/publish/common_publish_page.dart b/lib/pages/common/publish/common_publish_page.dart index cfe0d00d..22d1007e 100644 --- a/lib/pages/common/publish/common_publish_page.dart +++ b/lib/pages/common/publish/common_publish_page.dart @@ -256,5 +256,5 @@ abstract class CommonPublishPageState enablePublish.value = value.trim().isNotEmpty; } - void onSave() {} + void onSave(); } diff --git a/lib/pages/common/publish/common_rich_text_pub_page.dart b/lib/pages/common/publish/common_rich_text_pub_page.dart index d7ec4ffc..45d3b89b 100644 --- a/lib/pages/common/publish/common_rich_text_pub_page.dart +++ b/lib/pages/common/publish/common_rich_text_pub_page.dart @@ -228,22 +228,23 @@ abstract class CommonRichTextPubPageState "biz_id": "", }); case RichTextType.vote: - list.add({ - "raw_text": e.rawText, - "type": 4, - "biz_id": e.id, - }); - list.add({ - "raw_text": ' ', - "type": 1, - "biz_id": "", - }); + list + ..add({ + "raw_text": e.rawText, + "type": 4, + "biz_id": e.id, + }) + ..add({ + "raw_text": ' ', + "type": 1, + "biz_id": "", + }); } } return list; } - double _mentionOffset = 0; + late double _mentionOffset = 0; Future onMention([bool fromClick = false]) async { controller.keepChatPanel(); final res = await DynMentionPanel.onDynMention( diff --git a/lib/pages/live_room/controller.dart b/lib/pages/live_room/controller.dart index 50359907..2a2955ed 100644 --- a/lib/pages/live_room/controller.dart +++ b/lib/pages/live_room/controller.dart @@ -113,14 +113,18 @@ class LiveRoomController extends GetxController { acceptQnList = item.acceptQn!.map((e) { return ( code: e, - desc: LiveQuality.values - .firstWhere((element) => element.code == e) - .description, + desc: + LiveQuality.values + .firstWhereOrNull((element) => element.code == e) + ?.description ?? + e.toString(), ); }).toList(); - currentQnDesc.value = LiveQuality.values - .firstWhere((element) => element.code == currentQn) - .description; + currentQnDesc.value = + LiveQuality.values + .firstWhereOrNull((element) => element.code == currentQn) + ?.description ?? + currentQn.toString(); String videoUrl = VideoUtils.getCdnUrl(item); await playerInit(videoUrl); isLoaded.value = true; @@ -251,9 +255,11 @@ class LiveRoomController extends GetxController { return null; } currentQn = qn; - currentQnDesc.value = LiveQuality.values - .firstWhere((element) => element.code == currentQn) - .description; + currentQnDesc.value = + LiveQuality.values + .firstWhereOrNull((element) => element.code == currentQn) + ?.description ?? + currentQn.toString(); return queryLiveUrl(); } diff --git a/lib/pages/setting/pages/display_mode.dart b/lib/pages/setting/pages/display_mode.dart index a97e6ba8..d3436e6b 100644 --- a/lib/pages/setting/pages/display_mode.dart +++ b/lib/pages/setting/pages/display_mode.dart @@ -53,7 +53,7 @@ class _SetDisplayModeState extends State { preferred ??= DisplayMode.auto; FlutterDisplayMode.setPreferredMode(preferred!).whenComplete(() { - Future.delayed(const Duration(milliseconds: 100)).whenComplete(fetchAll); + Future.delayed(const Duration(milliseconds: 100), fetchAll); }); } diff --git a/lib/utils/page_utils.dart b/lib/utils/page_utils.dart index da67ec38..4ec16f0b 100644 --- a/lib/utils/page_utils.dart +++ b/lib/utils/page_utils.dart @@ -551,13 +551,15 @@ class PageUtils { initIndex: index, setStatusBar: false, onClose: (value) async { - if (value == false) { - await ctr.reverse(); + if (!value) { + try { + await ctr.reverse(); + } catch (_) {} } try { ctr.dispose(); } catch (_) {} - if (value == false) { + if (!value) { Get.back(); } },