mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-04-27 05:45:51 +08:00
@@ -10,6 +10,8 @@ import 'package:PiliPlus/models_new/msgfeed_unread/data.dart';
|
||||
import 'package:PiliPlus/models_new/single_unread/data.dart';
|
||||
import 'package:PiliPlus/services/account_service.dart';
|
||||
import 'package:PiliPlus/utils/storage.dart';
|
||||
import 'package:PiliPlus/utils/storage_key.dart';
|
||||
import 'package:PiliPlus/utils/storage_pref.dart';
|
||||
import 'package:PiliPlus/utils/update.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
@@ -22,29 +24,32 @@ class MainController extends GetxController
|
||||
RxInt dynCount = 0.obs;
|
||||
|
||||
StreamController<bool>? bottomBarStream;
|
||||
late bool hideTabBar;
|
||||
late bool hideTabBar = Pref.hideTabBar;
|
||||
late dynamic controller;
|
||||
RxInt selectedIndex = 0.obs;
|
||||
|
||||
late DynamicBadgeMode dynamicBadgeMode;
|
||||
late bool checkDynamic = GStorage.checkDynamic;
|
||||
late int dynamicPeriod = GStorage.dynamicPeriod;
|
||||
late bool checkDynamic = Pref.checkDynamic;
|
||||
late int dynamicPeriod = Pref.dynamicPeriod;
|
||||
late int _lastCheckDynamicAt = 0;
|
||||
late int dynIndex = -1;
|
||||
|
||||
late int homeIndex = -1;
|
||||
late DynamicBadgeMode msgBadgeMode = GStorage.msgBadgeMode;
|
||||
late Set<MsgUnReadType> msgUnReadTypes = GStorage.msgUnReadTypeV2;
|
||||
late DynamicBadgeMode msgBadgeMode = Pref.msgBadgeMode;
|
||||
late Set<MsgUnReadType> msgUnReadTypes = Pref.msgUnReadTypeV2;
|
||||
late final RxString msgUnReadCount = ''.obs;
|
||||
late int lastCheckUnreadAt = 0;
|
||||
|
||||
late final mainTabBarView = GStorage.mainTabBarView;
|
||||
late bool navSearchStreamDebounce = GStorage.navSearchStreamDebounce;
|
||||
final enableMYBar = Pref.enableMYBar;
|
||||
final useSideBar = Pref.useSideBar;
|
||||
final mainTabBarView = Pref.mainTabBarView;
|
||||
late bool navSearchStreamDebounce = Pref.navSearchStreamDebounce;
|
||||
late final optTabletNav = Pref.optTabletNav;
|
||||
|
||||
@override
|
||||
void onInit() {
|
||||
super.onInit();
|
||||
if (GStorage.autoUpdate) {
|
||||
if (Pref.autoUpdate) {
|
||||
Update.checkUpdate();
|
||||
}
|
||||
|
||||
@@ -58,14 +63,10 @@ class MainController extends GetxController
|
||||
)
|
||||
: PageController(initialPage: selectedIndex.value);
|
||||
|
||||
hideTabBar =
|
||||
GStorage.setting.get(SettingBoxKey.hideTabBar, defaultValue: true);
|
||||
if (navigationBars.length > 1 && hideTabBar) {
|
||||
bottomBarStream = StreamController<bool>.broadcast();
|
||||
}
|
||||
dynamicBadgeMode = DynamicBadgeMode.values[GStorage.setting.get(
|
||||
SettingBoxKey.dynamicBadgeMode,
|
||||
defaultValue: DynamicBadgeMode.number.index)];
|
||||
dynamicBadgeMode = DynamicBadgeMode.values[Pref.dynamicBadgeMode];
|
||||
|
||||
dynIndex = navigationBars.indexOf(NavigationBarType.dynamics);
|
||||
if (dynamicBadgeMode != DynamicBadgeMode.hidden) {
|
||||
@@ -193,7 +194,7 @@ class MainController extends GetxController
|
||||
void setNavBarConfig() {
|
||||
List<int>? navBarSort =
|
||||
(GStorage.setting.get(SettingBoxKey.navBarSort) as List?)?.cast();
|
||||
int defaultHomePage = GStorage.defaultHomePage;
|
||||
int defaultHomePage = Pref.defaultHomePage;
|
||||
late final List<NavigationBarType> navigationBars;
|
||||
if (navBarSort == null) {
|
||||
navigationBars = NavigationBarType.values;
|
||||
|
||||
@@ -40,17 +40,10 @@ class _MainAppState extends State<MainApp>
|
||||
late final _dynamicController = Get.put(DynamicsController());
|
||||
|
||||
late int _lastSelectTime = 0;
|
||||
late bool enableMYBar;
|
||||
late bool useSideBar;
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
_lastSelectTime = DateTime.now().millisecondsSinceEpoch;
|
||||
enableMYBar =
|
||||
GStorage.setting.get(SettingBoxKey.enableMYBar, defaultValue: true);
|
||||
useSideBar =
|
||||
GStorage.setting.get(SettingBoxKey.useSideBar, defaultValue: false);
|
||||
WidgetsBinding.instance.addObserver(this);
|
||||
}
|
||||
|
||||
@@ -198,9 +191,9 @@ class _MainAppState extends State<MainApp>
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
if (useSideBar || !isPortrait) ...[
|
||||
if (_mainController.useSideBar || !isPortrait) ...[
|
||||
_mainController.navigationBars.length > 1
|
||||
? context.isTablet && GStorage.optTabletNav
|
||||
? context.isTablet && _mainController.optTabletNav
|
||||
? Column(
|
||||
children: [
|
||||
const SizedBox(height: 25),
|
||||
@@ -295,7 +288,7 @@ class _MainAppState extends State<MainApp>
|
||||
],
|
||||
),
|
||||
),
|
||||
bottomNavigationBar: useSideBar || !isPortrait
|
||||
bottomNavigationBar: _mainController.useSideBar || !isPortrait
|
||||
? null
|
||||
: StreamBuilder(
|
||||
stream: _mainController.hideTabBar
|
||||
@@ -311,7 +304,7 @@ class _MainAppState extends State<MainApp>
|
||||
curve: Curves.easeInOutCubicEmphasized,
|
||||
duration: const Duration(milliseconds: 500),
|
||||
offset: Offset(0, snapshot.data ? 0 : 1),
|
||||
child: enableMYBar
|
||||
child: _mainController.enableMYBar
|
||||
? _mainController.navigationBars.length > 1
|
||||
? Obx(
|
||||
() => NavigationBar(
|
||||
|
||||
Reference in New Issue
Block a user