From fe51669369b2ed985faded0267a3617ce0084f50 Mon Sep 17 00:00:00 2001 From: lollipopkit Date: Fri, 18 Aug 2023 16:33:16 +0800 Subject: [PATCH] chore: update `l10n` --- .dart_tool/flutter_gen/gen_l10n/l10n.dart | 6 ++++ .dart_tool/flutter_gen/gen_l10n/l10n_de.dart | 3 ++ .dart_tool/flutter_gen/gen_l10n/l10n_en.dart | 3 ++ .dart_tool/flutter_gen/gen_l10n/l10n_id.dart | 3 ++ .dart_tool/flutter_gen/gen_l10n/l10n_zh.dart | 6 ++++ ios/Podfile.lock | 2 +- ios/Runner.xcodeproj/project.pbxproj | 24 +++++++------- lib/data/model/server/cpu.dart | 3 +- lib/data/res/build_data.dart | 6 ++-- lib/l10n/app_de.arb | 1 + lib/l10n/app_en.arb | 1 + lib/l10n/app_id.arb | 1 + lib/l10n/app_zh.arb | 1 + lib/l10n/app_zh_tw.arb | 1 + lib/view/page/ssh/term.dart | 35 +++++++++++--------- 15 files changed, 63 insertions(+), 33 deletions(-) diff --git a/.dart_tool/flutter_gen/gen_l10n/l10n.dart b/.dart_tool/flutter_gen/gen_l10n/l10n.dart index fcbd77f2..c43b8061 100644 --- a/.dart_tool/flutter_gen/gen_l10n/l10n.dart +++ b/.dart_tool/flutter_gen/gen_l10n/l10n.dart @@ -566,6 +566,12 @@ abstract class S { /// **'Getting token...'** String get gettingToken; + /// No description provided for @goBackQ. + /// + /// In en, this message translates to: + /// **'Go back?'** + String get goBackQ; + /// No description provided for @goto. /// /// In en, this message translates to: diff --git a/.dart_tool/flutter_gen/gen_l10n/l10n_de.dart b/.dart_tool/flutter_gen/gen_l10n/l10n_de.dart index 3e36d1ec..6f064e68 100644 --- a/.dart_tool/flutter_gen/gen_l10n/l10n_de.dart +++ b/.dart_tool/flutter_gen/gen_l10n/l10n_de.dart @@ -254,6 +254,9 @@ class SDe extends S { @override String get gettingToken => 'Getting token...'; + @override + String get goBackQ => 'Zurückkommen?'; + @override String get goto => 'Pfad öffnen'; diff --git a/.dart_tool/flutter_gen/gen_l10n/l10n_en.dart b/.dart_tool/flutter_gen/gen_l10n/l10n_en.dart index 1303f75d..9df931a1 100644 --- a/.dart_tool/flutter_gen/gen_l10n/l10n_en.dart +++ b/.dart_tool/flutter_gen/gen_l10n/l10n_en.dart @@ -254,6 +254,9 @@ class SEn extends S { @override String get gettingToken => 'Getting token...'; + @override + String get goBackQ => 'Go back?'; + @override String get goto => 'Go to'; diff --git a/.dart_tool/flutter_gen/gen_l10n/l10n_id.dart b/.dart_tool/flutter_gen/gen_l10n/l10n_id.dart index 83a2df38..ac779009 100644 --- a/.dart_tool/flutter_gen/gen_l10n/l10n_id.dart +++ b/.dart_tool/flutter_gen/gen_l10n/l10n_id.dart @@ -254,6 +254,9 @@ class SId extends S { @override String get gettingToken => 'Mendapatkan token ...'; + @override + String get goBackQ => 'Datang kembali?'; + @override String get goto => 'Pergi ke'; diff --git a/.dart_tool/flutter_gen/gen_l10n/l10n_zh.dart b/.dart_tool/flutter_gen/gen_l10n/l10n_zh.dart index 7fc93c25..ff294a27 100644 --- a/.dart_tool/flutter_gen/gen_l10n/l10n_zh.dart +++ b/.dart_tool/flutter_gen/gen_l10n/l10n_zh.dart @@ -254,6 +254,9 @@ class SZh extends S { @override String get gettingToken => '正在获取Token...'; + @override + String get goBackQ => '返回?'; + @override String get goto => '前往'; @@ -953,6 +956,9 @@ class SZhTw extends SZh { @override String get gettingToken => '正在獲取Token...'; + @override + String get goBackQ => '返回?'; + @override String get goto => '前往'; diff --git a/ios/Podfile.lock b/ios/Podfile.lock index a1d6006d..d7b66e28 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -60,7 +60,7 @@ SPEC CHECKSUMS: file_picker: 1d63c4949e05e386da864365f8c13e1e64787675 Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 flutter_native_splash: 52501b97d1c0a5f898d687f1646226c1f93c56ef - path_provider_foundation: eaf5b3e458fc0e5fbb9940fb09980e853fe058b8 + path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943 plain_notification_token: b36467dc91939a7b6754267c701bbaca14996ee1 r_upgrade: 44d715c61914cce3d01ea225abffe894fd51c114 share_plus: 599aa54e4ea31d4b4c0e9c911bcc26c55e791028 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 59a7e04a..2b31bff4 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -470,7 +470,7 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - CURRENT_PROJECT_VERSION = 476; + CURRENT_PROJECT_VERSION = 477; DEVELOPMENT_TEAM = BA88US33G6; ENABLE_BITCODE = NO; INFOPLIST_FILE = "Runner/Info-$(CONFIGURATION).plist"; @@ -478,7 +478,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.0.476; + MARKETING_VERSION = 1.0.477; PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; @@ -602,7 +602,7 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - CURRENT_PROJECT_VERSION = 476; + CURRENT_PROJECT_VERSION = 477; DEVELOPMENT_TEAM = BA88US33G6; ENABLE_BITCODE = NO; INFOPLIST_FILE = "Runner/Info-$(CONFIGURATION).plist"; @@ -610,7 +610,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.0.476; + MARKETING_VERSION = 1.0.477; PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; @@ -628,7 +628,7 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - CURRENT_PROJECT_VERSION = 476; + CURRENT_PROJECT_VERSION = 477; DEVELOPMENT_TEAM = BA88US33G6; ENABLE_BITCODE = NO; INFOPLIST_FILE = "Runner/Info-$(CONFIGURATION).plist"; @@ -636,7 +636,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.0.476; + MARKETING_VERSION = 1.0.477; PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; @@ -657,7 +657,7 @@ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 476; + CURRENT_PROJECT_VERSION = 477; DEVELOPMENT_TEAM = BA88US33G6; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; @@ -670,7 +670,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.476; + MARKETING_VERSION = 1.0.477; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox.StatusWidget; @@ -696,7 +696,7 @@ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 476; + CURRENT_PROJECT_VERSION = 477; DEVELOPMENT_TEAM = BA88US33G6; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; @@ -709,7 +709,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.476; + MARKETING_VERSION = 1.0.477; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox.StatusWidget; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -732,7 +732,7 @@ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 476; + CURRENT_PROJECT_VERSION = 477; DEVELOPMENT_TEAM = BA88US33G6; GCC_C_LANGUAGE_STANDARD = gnu11; GENERATE_INFOPLIST_FILE = YES; @@ -745,7 +745,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.476; + MARKETING_VERSION = 1.0.477; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.lollipopkit.toolbox.StatusWidget; PRODUCT_NAME = "$(TARGET_NAME)"; diff --git a/lib/data/model/server/cpu.dart b/lib/data/model/server/cpu.dart index 79a915ab..fefdb7f4 100644 --- a/lib/data/model/server/cpu.dart +++ b/lib/data/model/server/cpu.dart @@ -80,7 +80,8 @@ List parseCPU(String raw) { if (item == '') break; final id = item.split(' ').first; final matches = item.replaceFirst(id, '').trim().split(' '); - cpus.add(OneTimeCpuStatus( + cpus.add( + OneTimeCpuStatus( id, int.parse(matches[0]), int.parse(matches[1]), diff --git a/lib/data/res/build_data.dart b/lib/data/res/build_data.dart index ba5bbf34..356f28eb 100644 --- a/lib/data/res/build_data.dart +++ b/lib/data/res/build_data.dart @@ -2,8 +2,8 @@ class BuildData { static const String name = "ServerBox"; - static const int build = 476; + static const int build = 477; static const String engine = "3.10.6"; - static const String buildAt = "2023-08-17 18:45:06.973608"; - static const int modifications = 5; + static const String buildAt = "2023-08-17 21:39:55.328086"; + static const int modifications = 14; } diff --git a/lib/l10n/app_de.arb b/lib/l10n/app_de.arb index 537520f8..da322639 100644 --- a/lib/l10n/app_de.arb +++ b/lib/l10n/app_de.arb @@ -78,6 +78,7 @@ "fullScreenJitterHelp": "Einbrennen des Bildschirms verhindern", "getPushTokenFailed": "Push-Token kann nicht abgerufen werden", "gettingToken": "Getting token...", + "goBackQ": "Zurückkommen?", "goto": "Pfad öffnen", "homeWidgetUrlConfig": "Home-Widget-Link konfigurieren", "host": "Host", diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 98b6d8e4..17743b24 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -78,6 +78,7 @@ "fullScreenJitterHelp": "To avoid screen burn-in", "getPushTokenFailed": "Can't fetch push token", "gettingToken": "Getting token...", + "goBackQ": "Go back?", "goto": "Go to", "homeWidgetUrlConfig": "Config home widget url", "host": "Host", diff --git a/lib/l10n/app_id.arb b/lib/l10n/app_id.arb index 1350961c..62556396 100644 --- a/lib/l10n/app_id.arb +++ b/lib/l10n/app_id.arb @@ -78,6 +78,7 @@ "fullScreenJitterHelp": "Untuk menghindari pembakaran layar", "getPushTokenFailed": "Tidak bisa mengambil token dorong", "gettingToken": "Mendapatkan token ...", + "goBackQ": "Datang kembali?", "goto": "Pergi ke", "homeWidgetUrlConfig": "Konfigurasi URL Widget Rumah", "host": "Host", diff --git a/lib/l10n/app_zh.arb b/lib/l10n/app_zh.arb index cfca9a57..a19c6210 100644 --- a/lib/l10n/app_zh.arb +++ b/lib/l10n/app_zh.arb @@ -78,6 +78,7 @@ "fullScreenJitterHelp": "防止烧屏", "getPushTokenFailed": "未能获取到推送token", "gettingToken": "正在获取Token...", + "goBackQ": "返回?", "goto": "前往", "homeWidgetUrlConfig": "桌面部件链接配置", "host": "主机", diff --git a/lib/l10n/app_zh_tw.arb b/lib/l10n/app_zh_tw.arb index 517896e3..2a18c08e 100644 --- a/lib/l10n/app_zh_tw.arb +++ b/lib/l10n/app_zh_tw.arb @@ -78,6 +78,7 @@ "fullScreenJitterHelp": "防止燒屏", "getPushTokenFailed": "未能獲取到推送token", "gettingToken": "正在獲取Token...", + "goBackQ": "返回?", "goto": "前往", "homeWidgetUrlConfig": "桌面部件鏈接配置", "host": "主機", diff --git a/lib/view/page/ssh/term.dart b/lib/view/page/ssh/term.dart index 2bb5cd2e..a91d93a4 100644 --- a/lib/view/page/ssh/term.dart +++ b/lib/view/page/ssh/term.dart @@ -8,7 +8,6 @@ import 'package:flutter/services.dart'; import 'package:flutter_gen/gen_l10n/l10n.dart'; import 'package:provider/provider.dart'; import 'package:toolbox/core/extension/navigator.dart'; -import 'package:toolbox/core/extension/uint8list.dart'; import 'package:xterm/xterm.dart'; import '../../../core/route.dart'; @@ -341,19 +340,7 @@ class _SSHPageState extends State { ), ); - _discontinuityTimer = Timer.periodic( - const Duration(seconds: 5), - (_) async { - var throwTimeout = true; - Future.delayed(const Duration(seconds: 3), () { - if (throwTimeout) { - _catchTimeout(); - } - }); - await _client?.run('echo 1').string; - throwTimeout = false; - }, - ); + _setupDiscontinuityTimer(); if (_session == null) { showSnackBar(context, const Text('Null session')); @@ -394,14 +381,30 @@ class _SSHPageState extends State { .listen(_terminal.write); } + void _setupDiscontinuityTimer() { + _discontinuityTimer = Timer.periodic( + const Duration(seconds: 5), + (_) async { + var throwTimeout = true; + Future.delayed(const Duration(seconds: 3), () { + if (throwTimeout) { + _catchTimeout(); + } + }); + await _client?.ping(); + throwTimeout = false; + }, + ); + } + void _catchTimeout() { _discontinuityTimer?.cancel(); if (!mounted) return; _write('\n\nConnection lost\r\n'); showRoundDialog( context: context, - title: Text(_s.disconnected), - child: Text('Go back?'), + title: Text(_s.attention), + child: Text('${_s.disconnected}\n${_s.goBackQ}'), barrierDismiss: false, actions: [ TextButton(