mirror of
https://github.com/venera-app/venera.git
synced 2025-09-27 07:47:24 +00:00
move checkUpdates to main_page
This commit is contained in:
@@ -232,7 +232,10 @@
|
|||||||
"No Category Pages": "没有分类页面",
|
"No Category Pages": "没有分类页面",
|
||||||
"Chapter @ep": "第 @ep 章",
|
"Chapter @ep": "第 @ep 章",
|
||||||
"Page @page": "第 @page 页",
|
"Page @page": "第 @page 页",
|
||||||
"Also remove files on disk": "同时删除磁盘上的文件"
|
"Also remove files on disk": "同时删除磁盘上的文件",
|
||||||
|
"New version available": "有新版本可用",
|
||||||
|
"A new version is available. Do you want to update now?" : "有新版本可用。您要现在更新吗?",
|
||||||
|
"No new version available": "没有新版本可用"
|
||||||
},
|
},
|
||||||
"zh_TW": {
|
"zh_TW": {
|
||||||
"Home": "首頁",
|
"Home": "首頁",
|
||||||
@@ -467,6 +470,9 @@
|
|||||||
"No Category Pages": "沒有分類頁面",
|
"No Category Pages": "沒有分類頁面",
|
||||||
"Chapter @ep": "第 @ep 章",
|
"Chapter @ep": "第 @ep 章",
|
||||||
"Page @page": "第 @page 頁",
|
"Page @page": "第 @page 頁",
|
||||||
"Also remove files on disk": "同時刪除磁盤上的文件"
|
"Also remove files on disk": "同時刪除磁盤上的文件",
|
||||||
|
"New version available": "有新版本可用",
|
||||||
|
"A new version is available. Do you want to update now?" : "有新版本可用。您要現在更新嗎?",
|
||||||
|
"No new version available": "沒有新版本可用"
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -6,9 +6,7 @@ import 'package:flutter_localizations/flutter_localizations.dart';
|
|||||||
import 'package:rhttp/rhttp.dart';
|
import 'package:rhttp/rhttp.dart';
|
||||||
import 'package:venera/foundation/log.dart';
|
import 'package:venera/foundation/log.dart';
|
||||||
import 'package:venera/pages/auth_page.dart';
|
import 'package:venera/pages/auth_page.dart';
|
||||||
import 'package:venera/pages/comic_source_page.dart';
|
|
||||||
import 'package:venera/pages/main_page.dart';
|
import 'package:venera/pages/main_page.dart';
|
||||||
import 'package:venera/pages/settings/settings_page.dart';
|
|
||||||
import 'package:venera/utils/app_links.dart';
|
import 'package:venera/utils/app_links.dart';
|
||||||
import 'package:venera/utils/io.dart';
|
import 'package:venera/utils/io.dart';
|
||||||
import 'package:window_manager/window_manager.dart';
|
import 'package:window_manager/window_manager.dart';
|
||||||
@@ -69,7 +67,6 @@ class MyApp extends StatefulWidget {
|
|||||||
class _MyAppState extends State<MyApp> with WidgetsBindingObserver {
|
class _MyAppState extends State<MyApp> with WidgetsBindingObserver {
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
checkUpdates();
|
|
||||||
App.registerForceRebuild(forceRebuild);
|
App.registerForceRebuild(forceRebuild);
|
||||||
SystemChrome.setEnabledSystemUIMode(SystemUiMode.edgeToEdge);
|
SystemChrome.setEnabledSystemUIMode(SystemUiMode.edgeToEdge);
|
||||||
WidgetsBinding.instance.addObserver(this);
|
WidgetsBinding.instance.addObserver(this);
|
||||||
@@ -227,22 +224,6 @@ class _MyAppState extends State<MyApp> with WidgetsBindingObserver {
|
|||||||
},
|
},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
void checkUpdates() async {
|
|
||||||
if (!appdata.settings['checkUpdateOnStart']) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
var lastCheck = appdata.implicitData['lastCheckUpdate'] ?? 0;
|
|
||||||
var now = DateTime.now().millisecondsSinceEpoch;
|
|
||||||
if (now - lastCheck < 24 * 60 * 60 * 1000) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
appdata.implicitData['lastCheckUpdate'] = now;
|
|
||||||
appdata.writeImplicitData();
|
|
||||||
await Future.delayed(const Duration(milliseconds: 300));
|
|
||||||
await checkUpdateUi(false);
|
|
||||||
await ComicSourcePage.checkComicSourceUpdate(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class _SystemUiProvider extends StatelessWidget {
|
class _SystemUiProvider extends StatelessWidget {
|
||||||
|
@@ -1,4 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:venera/foundation/appdata.dart';
|
||||||
import 'package:venera/pages/categories_page.dart';
|
import 'package:venera/pages/categories_page.dart';
|
||||||
import 'package:venera/pages/search_page.dart';
|
import 'package:venera/pages/search_page.dart';
|
||||||
import 'package:venera/pages/settings/settings_page.dart';
|
import 'package:venera/pages/settings/settings_page.dart';
|
||||||
@@ -6,6 +7,7 @@ import 'package:venera/utils/translations.dart';
|
|||||||
|
|
||||||
import '../components/components.dart';
|
import '../components/components.dart';
|
||||||
import '../foundation/app.dart';
|
import '../foundation/app.dart';
|
||||||
|
import 'comic_source_page.dart';
|
||||||
import 'explore_page.dart';
|
import 'explore_page.dart';
|
||||||
import 'favorites/favorites_page.dart';
|
import 'favorites/favorites_page.dart';
|
||||||
import 'home_page.dart';
|
import 'home_page.dart';
|
||||||
@@ -34,8 +36,25 @@ class _MainPageState extends State<MainPage> {
|
|||||||
_navigatorKey!.currentContext!.pop();
|
_navigatorKey!.currentContext!.pop();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void checkUpdates() async {
|
||||||
|
if (!appdata.settings['checkUpdateOnStart']) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
var lastCheck = appdata.implicitData['lastCheckUpdate'] ?? 0;
|
||||||
|
var now = DateTime.now().millisecondsSinceEpoch;
|
||||||
|
if (now - lastCheck < 24 * 60 * 60 * 1000) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
appdata.implicitData['lastCheckUpdate'] = now;
|
||||||
|
appdata.writeImplicitData();
|
||||||
|
await Future.delayed(const Duration(milliseconds: 300));
|
||||||
|
await checkUpdateUi(false);
|
||||||
|
await ComicSourcePage.checkComicSourceUpdate(true);
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
|
checkUpdates();
|
||||||
_observer = NaviObserver();
|
_observer = NaviObserver();
|
||||||
_navigatorKey = GlobalKey();
|
_navigatorKey = GlobalKey();
|
||||||
App.mainNavigatorKey = _navigatorKey;
|
App.mainNavigatorKey = _navigatorKey;
|
||||||
|
Reference in New Issue
Block a user