♻️ Refactored navigation

This commit is contained in:
2024-07-12 16:19:54 +08:00
parent 48b76ed574
commit aa43eaa0eb
27 changed files with 115 additions and 197 deletions

View File

@ -4,7 +4,7 @@ import 'package:solian/exts.dart';
import 'package:solian/models/articles.dart';
import 'package:solian/providers/content/feed.dart';
import 'package:solian/widgets/articles/article_item.dart';
import 'package:solian/widgets/centered_container.dart';
import 'package:solian/widgets/sized_container.dart';
class ArticleDetailScreen extends StatefulWidget {
final String alias;

View File

@ -10,7 +10,6 @@ import 'package:solian/theme.dart';
import 'package:solian/widgets/app_bar_title.dart';
import 'package:solian/widgets/attachments/attachment_publish.dart';
import 'package:solian/widgets/feed/feed_tags_field.dart';
import 'package:solian/widgets/prev_page.dart';
import 'package:textfield_tags/textfield_tags.dart';
import 'package:badges/badges.dart' as badges;
@ -133,7 +132,6 @@ class _ArticlePublishScreenState extends State<ArticlePublishScreen> {
title: AppBarTitle('articlePublish'.tr),
centerTitle: false,
toolbarHeight: SolianTheme.toolbarHeight(context),
leading: const PrevPageButton(),
actions: [
TextButton(
onPressed: _isBusy ? null : () => applyPost(),

View File

@ -7,7 +7,6 @@ import 'package:solian/providers/content/call.dart';
import 'package:solian/theme.dart';
import 'package:solian/widgets/chat/call/call_controls.dart';
import 'package:solian/widgets/chat/call/call_participant.dart';
import 'package:solian/widgets/prev_page.dart';
class CallScreen extends StatefulWidget {
const CallScreen({super.key});
@ -72,7 +71,6 @@ class _CallScreenState extends State<CallScreen> {
),
]),
),
leading: const PrevPageButton(),
),
body: SafeArea(
child: Obx(

View File

@ -9,7 +9,6 @@ import 'package:solian/providers/content/channel.dart';
import 'package:solian/router.dart';
import 'package:solian/theme.dart';
import 'package:solian/widgets/app_bar_title.dart';
import 'package:solian/widgets/prev_page.dart';
import 'package:uuid/uuid.dart';
class ChannelOrganizeArguments {
@ -112,7 +111,6 @@ class _ChannelOrganizeScreenState extends State<ChannelOrganizeScreen> {
title: AppBarTitle('channelOrganizing'.tr),
centerTitle: false,
toolbarHeight: SolianTheme.toolbarHeight(context),
leading: const PrevPageButton(),
actions: [
TextButton(
onPressed: _isBusy ? null : () => applyChannel(),

View File

@ -12,7 +12,6 @@ import 'package:solian/widgets/app_bar_title.dart';
import 'package:solian/widgets/channel/channel_list.dart';
import 'package:solian/widgets/chat/call/chat_call_indicator.dart';
import 'package:solian/widgets/current_state_action.dart';
import 'package:solian/widgets/drawer_button.dart' as drawer;
class ChatScreen extends StatefulWidget {
const ChatScreen({super.key});
@ -95,7 +94,6 @@ class _ChatScreenState extends State<ChatScreen> {
title: AppBarTitle('chat'.tr),
centerTitle: false,
floating: true,
leading: const drawer.DrawerButton(),
toolbarHeight: SolianTheme.toolbarHeight(context),
actions: [
const BackgroundStateWidget(),

View File

@ -6,14 +6,13 @@ import 'package:solian/models/feed.dart';
import 'package:solian/models/pagination.dart';
import 'package:solian/models/post.dart';
import 'package:solian/providers/content/feed.dart';
import 'package:solian/screens/feed.dart';
import 'package:solian/screens/home.dart';
import 'package:solian/theme.dart';
import 'package:solian/widgets/app_bar_title.dart';
import 'package:solian/widgets/articles/article_action.dart';
import 'package:solian/widgets/articles/article_owned_list.dart';
import 'package:solian/widgets/posts/post_action.dart';
import 'package:solian/widgets/posts/post_owned_list.dart';
import 'package:solian/widgets/prev_page.dart';
class DraftBoxScreen extends StatefulWidget {
const DraftBoxScreen({super.key});
@ -66,7 +65,6 @@ class _DraftBoxScreenState extends State<DraftBoxScreen> {
title: AppBarTitle('draftBox'.tr),
centerTitle: false,
toolbarHeight: SolianTheme.toolbarHeight(context),
leading: const PrevPageButton(),
actions: [
FeedCreationButton(
hideDraftBox: true,

View File

@ -11,16 +11,15 @@ import 'package:solian/theme.dart';
import 'package:solian/widgets/app_bar_title.dart';
import 'package:solian/widgets/current_state_action.dart';
import 'package:solian/widgets/feed/feed_list.dart';
import 'package:solian/widgets/drawer_button.dart' as drawer;
class FeedScreen extends StatefulWidget {
const FeedScreen({super.key});
class HomeScreen extends StatefulWidget {
const HomeScreen({super.key});
@override
State<FeedScreen> createState() => _FeedScreenState();
State<HomeScreen> createState() => _HomeScreenState();
}
class _FeedScreenState extends State<FeedScreen> {
class _HomeScreenState extends State<HomeScreen> {
final PagingController<int, FeedRecord> _pagingController =
PagingController(firstPageKey: 0);
@ -60,11 +59,10 @@ class _FeedScreenState extends State<FeedScreen> {
child: CustomScrollView(
slivers: [
SliverAppBar(
title: AppBarTitle('feed'.tr),
title: AppBarTitle('home'.tr),
centerTitle: false,
floating: true,
toolbarHeight: SolianTheme.toolbarHeight(context),
leading: const drawer.DrawerButton(),
actions: [
const BackgroundStateWidget(),
const NotificationButton(),

View File

@ -3,7 +3,7 @@ import 'package:get/get.dart';
import 'package:solian/exts.dart';
import 'package:solian/models/post.dart';
import 'package:solian/providers/content/feed.dart';
import 'package:solian/widgets/centered_container.dart';
import 'package:solian/widgets/sized_container.dart';
import 'package:solian/widgets/posts/post_item.dart';
import 'package:solian/widgets/posts/post_replies.dart';

View File

@ -12,7 +12,6 @@ import 'package:solian/widgets/app_bar_title.dart';
import 'package:solian/widgets/attachments/attachment_publish.dart';
import 'package:solian/widgets/posts/post_item.dart';
import 'package:solian/widgets/feed/feed_tags_field.dart';
import 'package:solian/widgets/prev_page.dart';
import 'package:textfield_tags/textfield_tags.dart';
import 'package:badges/badges.dart' as badges;
@ -137,7 +136,6 @@ class _PostPublishScreenState extends State<PostPublishScreen> {
title: AppBarTitle('postPublish'.tr),
centerTitle: false,
toolbarHeight: SolianTheme.toolbarHeight(context),
leading: const PrevPageButton(),
actions: [
TextButton(
onPressed: _isBusy ? null : () => applyPost(),

View File

@ -11,7 +11,6 @@ import 'package:solian/theme.dart';
import 'package:solian/widgets/account/signin_required_overlay.dart';
import 'package:solian/widgets/app_bar_title.dart';
import 'package:solian/widgets/current_state_action.dart';
import 'package:solian/widgets/drawer_button.dart' as drawer;
class RealmListScreen extends StatefulWidget {
const RealmListScreen({super.key});
@ -80,7 +79,6 @@ class _RealmListScreenState extends State<RealmListScreen> {
title: AppBarTitle('realm'.tr),
centerTitle: false,
floating: true,
leading: const drawer.DrawerButton(),
toolbarHeight: SolianTheme.toolbarHeight(context),
actions: [
const BackgroundStateWidget(),

View File

@ -7,7 +7,6 @@ import 'package:solian/providers/auth.dart';
import 'package:solian/router.dart';
import 'package:solian/theme.dart';
import 'package:solian/widgets/app_bar_title.dart';
import 'package:solian/widgets/prev_page.dart';
import 'package:uuid/uuid.dart';
class RealmOrganizeArguments {
@ -102,7 +101,6 @@ class _RealmOrganizeScreenState extends State<RealmOrganizeScreen> {
title: AppBarTitle('realmOrganizing'.tr),
centerTitle: false,
toolbarHeight: SolianTheme.toolbarHeight(context),
leading: const PrevPageButton(),
actions: [
TextButton(
onPressed: _isBusy ? null : () => applyRealm(),