hide some about setting item

This commit is contained in:
DASHU
2025-01-22 11:45:29 +08:00
parent 74d43ff412
commit 3b2b46d2ec
4 changed files with 113 additions and 8 deletions

View File

@@ -11,4 +11,5 @@ class RouterPath {
static const String BOOKMARK = "/bookmark";
static const String AUTH_LOGS = "/authLogs";
static const String SETTING = "/setting";
static const String ABOUT_ME = "/aboutMe";
}

View File

@@ -17,6 +17,7 @@ import 'package:nowser/provider/build_in_relay_provider.dart';
import 'package:nowser/provider/key_provider.dart';
import 'package:nowser/provider/permission_check_mixin.dart';
import 'package:nowser/provider/web_provider.dart';
import 'package:nowser/router/about_me/about_me_router.dart';
import 'package:nowser/router/app_detail/app_detail_router.dart';
import 'package:nowser/router/apps/add_remote_app_router.dart';
import 'package:nowser/router/apps/apps_router.dart';
@@ -189,6 +190,7 @@ class _MyApp extends State<MyApp> {
RouterPath.BOOKMARK: (context) => BookmarkRouter(),
RouterPath.AUTH_LOGS: (context) => AuthLogsRouter(),
RouterPath.SETTING: (context) => SettingRouter(indexReload: reload),
RouterPath.ABOUT_ME: (context) => AboutMeRouter(),
};
SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(

View File

@@ -0,0 +1,98 @@
import 'package:flutter/material.dart';
import 'package:nowser/const/base.dart';
import 'package:nowser/util/router_util.dart';
import '../../generated/l10n.dart';
class AboutMeRouter extends StatefulWidget {
@override
State<StatefulWidget> createState() {
return _AboutMeRouter();
}
}
class _AboutMeRouter extends State<AboutMeRouter> {
@override
Widget build(BuildContext context) {
var s = S.of(context);
var themeData = Theme.of(context);
var paddingTop = MediaQuery.of(context).padding.top;
List<Widget> list = [];
list.add(Container(
margin: EdgeInsets.only(top: 100),
child: Image.asset(
"assets/imgs/logo/logo512.png",
width: 100,
height: 100,
),
));
list.add(Container(
margin: EdgeInsets.only(top: 40),
child: Text(
"Nowser",
style: TextStyle(
fontWeight: FontWeight.bold,
fontSize: themeData.textTheme.bodyLarge!.fontSize,
),
),
));
list.add(Container(
margin: EdgeInsets.only(top: 10),
child: Text(
"V ${Base.VERSION_NAME}",
style: TextStyle(
fontWeight: FontWeight.bold,
fontSize: themeData.textTheme.bodySmall!.fontSize,
),
),
));
list.add(Expanded(child: Container()));
list.add(Container(
margin: EdgeInsets.only(bottom: 50),
child: Text(
s.Privacy,
style: TextStyle(
fontSize: themeData.textTheme.bodySmall!.fontSize,
),
),
));
var backBtn = GestureDetector(
onTap: () {
RouterUtil.back(context);
},
behavior: HitTestBehavior.translucent,
child: Icon(Icons.chevron_left),
);
return Scaffold(
body: Container(
width: double.infinity,
child: Stack(
children: [
Positioned.fill(
top: 0,
bottom: 0,
left: 0,
right: 0,
child: Column(
children: list,
),
),
Positioned(
top: paddingTop + Base.BASE_PADDING,
left: Base.BASE_PADDING,
child: backBtn,
),
],
),
),
);
}
}

View File

@@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:nostr_sdk/utils/string_util.dart';
import 'package:nowser/component/text_input/text_input_dialog.dart';
import 'package:nowser/const/router_path.dart';
import '../../component/enum_selector_component.dart';
import '../../const/base.dart';
@@ -86,17 +87,20 @@ class _SettingRouter extends State<SettingRouter> {
Widget aboutTitleWidget = genTitle(s.About, themeData);
List<Widget> aboutList = [];
aboutList.add(SettingItemComponent("FAQ", child: moreWidget));
// aboutList.add(SettingItemComponent("FAQ", child: moreWidget));
aboutList.add(SettingItemComponent(
s.About_Me,
// showTopBorder: true,
onTap: () {
RouterUtil.router(context, RouterPath.ABOUT_ME);
},
child: moreWidget,
showTopBorder: true,
));
aboutList.add(SettingItemComponent(
s.Privacy,
child: moreWidget,
showTopBorder: true,
));
// aboutList.add(SettingItemComponent(
// s.Privacy,
// child: moreWidget,
// showTopBorder: true,
// ));
var aboutListWidget = genConfigListWidget(aboutList, themeData);
var main = SingleChildScrollView(
@@ -293,7 +297,7 @@ class _SettingRouter extends State<SettingRouter> {
// custom config search engine
var value = await TextInputDialog.show(context, s.Input_search_url_des);
if (StringUtil.isNotBlank(value)) {
settingProvider.searchEngine = resultEnumObj.value;
settingProvider.searchEngine = value;
resetTheme();
}
}