From 55a18018950aa996e478b042cada7c22d2689688 Mon Sep 17 00:00:00 2001 From: Jason Date: Mon, 31 Oct 2022 11:42:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A9=E8=AE=B0=E8=AF=8D=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/images/logo.png | Bin 0 -> 10269 bytes lib/services/auth_service.dart | 15 ++++++ lib/utils/im_tools.dart | 2 +- .../moments/index/widgets/moment_header.dart | 3 +- lib/views/user/setting/safe/index_page.dart | 46 +++++++++++++++++- 5 files changed, 62 insertions(+), 4 deletions(-) create mode 100644 assets/images/logo.png diff --git a/assets/images/logo.png b/assets/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ae7eaf4db3807ac0426c693303f6029e67efc2d6 GIT binary patch literal 10269 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 _box.read('userSig') ?? ''; String get _userToken => _box.read('userToken') ?? ''; Map get _userInfo => _box.read('userInfo') ?? {}; + String get mnemonic => _box.read('mnemonic') ?? ''; /// 用户信息,这个数据,在更新用户资料的时候,也应该更新 Rx userInfo = UserInfoModel.empty().obs; @@ -92,6 +99,14 @@ class AuthService extends GetxService { TimService.to.instance.logout(); + /// 移除这些服务 + Get.delete(); + Get.delete(); + Get.delete(); + Get.delete(); + Get.delete(); + Get.delete(); + userInfo.value = UserInfoModel.empty(); isLogin.value = false; Get.offAllNamed(AuthRoutes.index); diff --git a/lib/utils/im_tools.dart b/lib/utils/im_tools.dart index 91871c8..9ea1e54 100644 --- a/lib/utils/im_tools.dart +++ b/lib/utils/im_tools.dart @@ -210,7 +210,7 @@ class ImTools { } static showTrtcMessage(String userID) { - return showModalBottomSheet( + showModalBottomSheet( context: Get.context!, isScrollControlled: true, backgroundColor: AppColors.white, diff --git a/lib/views/moments/index/widgets/moment_header.dart b/lib/views/moments/index/widgets/moment_header.dart index 3c87e83..bf46a82 100644 --- a/lib/views/moments/index/widgets/moment_header.dart +++ b/lib/views/moments/index/widgets/moment_header.dart @@ -5,7 +5,6 @@ import 'package:chat/routes/moments_routes.dart'; import 'package:chat/services/auth_service.dart'; import 'package:chat/widgets/custom_avatar.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; import 'package:flutter_easyrefresh/easy_refresh.dart'; import 'package:get/get.dart'; @@ -21,7 +20,7 @@ class MomentHeader extends StatelessWidget { @override Widget build(BuildContext context) { return SliverAppBar( - systemOverlayStyle: SystemUiOverlayStyle.light, + // systemOverlayStyle: SystemUiOverlayStyle.light, pinned: true, expandedHeight: 260, backgroundColor: AppColors.primary, diff --git a/lib/views/user/setting/safe/index_page.dart b/lib/views/user/setting/safe/index_page.dart index 3e1e962..b49eeb7 100644 --- a/lib/views/user/setting/safe/index_page.dart +++ b/lib/views/user/setting/safe/index_page.dart @@ -1,6 +1,10 @@ import 'package:chat/configs/app_colors.dart'; +import 'package:chat/services/auth_service.dart'; +import 'package:chat/utils/ui_tools.dart'; import 'package:chat/views/home/widgets/action_item.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:get/get.dart'; class UserSettingSafePage extends StatefulWidget { const UserSettingSafePage({Key? key}) : super(key: key); @@ -20,7 +24,47 @@ class _UserSettingSafePageState extends State { children: [ ActionItem( '导出助记词', - onTap: () {}, + onTap: () { + showModalBottomSheet( + context: context, + isScrollControlled: true, + backgroundColor: AppColors.white, + shape: const RoundedRectangleBorder( + borderRadius: BorderRadius.vertical(top: Radius.circular(8)), + ), + builder: (context) { + return Column( + mainAxisSize: MainAxisSize.min, + children: [ + const SizedBox(height: 16), + const Text('您的助记词'), + Container( + padding: const EdgeInsets.all(32), + child: Text( + AuthService.to.mnemonic, + style: const TextStyle( + fontSize: 18, + ), + ), + ), + ElevatedButton( + onPressed: () { + Clipboard.setData( + ClipboardData( + text: AuthService.to.mnemonic, + ), + ); + UiTools.toast('复制成功'); + Get.back(); + }, + child: const Text('复制'), + ), + const SizedBox(height: 16), + ], + ); + }, + ); + }, ), const Divider( height: 0,