opt: save rcmd

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-01-10 18:35:09 +08:00
parent 7b3d132802
commit 69463d4945
3 changed files with 26 additions and 20 deletions

View File

@@ -43,25 +43,27 @@ class _HomePageState extends State<HomePage>
if (!_homeController.useSideBar) customAppBar, if (!_homeController.useSideBar) customAppBar,
if (_homeController.tabs.length > 1) ...[ if (_homeController.tabs.length > 1) ...[
const SizedBox(height: 4), const SizedBox(height: 4),
Container( Material(
height: 42,
color: Theme.of(context).colorScheme.surface, color: Theme.of(context).colorScheme.surface,
child: TabBar( child: SizedBox(
controller: _homeController.tabController, height: 42,
tabs: [ child: TabBar(
for (var i in _homeController.tabs) Tab(text: i['label']) controller: _homeController.tabController,
], tabs: [
isScrollable: true, for (var i in _homeController.tabs) Tab(text: i['label'])
dividerColor: Colors.transparent, ],
enableFeedback: true, isScrollable: true,
splashBorderRadius: BorderRadius.circular(10), dividerColor: Colors.transparent,
tabAlignment: TabAlignment.center, enableFeedback: true,
onTap: (value) { splashBorderRadius: BorderRadius.circular(10),
feedBack(); tabAlignment: TabAlignment.center,
if (_homeController.tabController.indexIsChanging.not) { onTap: (value) {
_homeController.animateToTop(); feedBack();
} if (_homeController.tabController.indexIsChanging.not) {
}, _homeController.animateToTop();
}
},
),
), ),
), ),
] else ] else

View File

@@ -39,7 +39,7 @@ class RcmdController extends CommonController {
bool shouldSaveLast = enableSaveLastData && currentPage == 0; bool shouldSaveLast = enableSaveLastData && currentPage == 0;
if (shouldSaveLast) { if (shouldSaveLast) {
int length = currentList.length; int length = currentList.length;
shouldSaveLast = shouldSaveLast && length > 0 && length < 500; shouldSaveLast = length > 0 && length < 500;
} }
lastRefreshAt = shouldSaveLast && savedRcmdTip ? dataList.length : null; lastRefreshAt = shouldSaveLast && savedRcmdTip ? dataList.length : null;
return shouldSaveLast ? dataList + currentList : null; return shouldSaveLast ? dataList + currentList : null;

View File

@@ -1136,7 +1136,11 @@ List<SettingsModel> get recommendSettings => [
defaultVal: true, defaultVal: true,
onChanged: (value) { onChanged: (value) {
try { try {
Get.find<RcmdController>().savedRcmdTip = value; RcmdController ctr = Get.find<RcmdController>();
ctr.savedRcmdTip = value;
if (value.not) {
ctr.lastRefreshAt = null;
}
} catch (e) { } catch (e) {
debugPrint('$e'); debugPrint('$e');
} }