@@ -72,7 +72,7 @@ class _HuaweiCloudServiceScreenState
7272
7373 loadConfig () async {
7474 _huaweiCloudCloudServiceConfig =
75- await CloudServiceConfigDao .getHuaweiCloudConfig ();
75+ await CloudServiceConfigDao .getHuaweiCloudConfig ();
7676 if (_huaweiCloudCloudServiceConfig != null ) {
7777 _sizeController.text = _huaweiCloudCloudServiceConfig! .size;
7878 _accountController.text = _huaweiCloudCloudServiceConfig! .account ?? "" ;
@@ -91,9 +91,9 @@ class _HuaweiCloudServiceScreenState
9191 }
9292 if (_huaweiCloudCloudService != null ) {
9393 _huaweiCloudCloudServiceConfig! .configured =
94- await _huaweiCloudCloudService! .hasConfigured ();
94+ await _huaweiCloudCloudService! .hasConfigured ();
9595 _huaweiCloudCloudServiceConfig! .connected =
96- await _huaweiCloudCloudService! .isConnected ();
96+ await _huaweiCloudCloudService! .isConnected ();
9797 if (_huaweiCloudCloudServiceConfig! .configured &&
9898 ! _huaweiCloudCloudServiceConfig! .connected) {
9999 IToast .showTop (appLocalizations.cloudConnectionError);
@@ -118,14 +118,30 @@ class _HuaweiCloudServiceScreenState
118118 @override
119119 Widget build (BuildContext context) {
120120 super .build (context);
121- return inited
122- ? _buildBody ()
123- : ItemBuilder .buildLoadingDialog (
124- context: context,
125- background: Colors .transparent,
126- text: appLocalizations.cloudConnecting,
127- mainAxisAlignment: MainAxisAlignment .start,
128- topPadding: 100 ,
121+ return ResponsiveUtil .isLinux ()
122+ ? _buildUnsupportBody ()
123+ : inited
124+ ? _buildBody ()
125+ : ItemBuilder .buildLoadingDialog (
126+ context: context,
127+ background: Colors .transparent,
128+ text: appLocalizations.cloudConnecting,
129+ mainAxisAlignment: MainAxisAlignment .start,
130+ topPadding: 100 ,
131+ );
132+ }
133+
134+ _buildUnsupportBody () {
135+ return Center (
136+ child: Column (
137+ mainAxisAlignment: MainAxisAlignment .start,
138+ children: [
139+ const SizedBox (height: 100 ),
140+ Text (appLocalizations
141+ .cloudTypeNotSupport (appLocalizations.cloudTypeBox)),
142+ const SizedBox (height: 10 ),
143+ ],
144+ ),
129145 );
130146 }
131147
@@ -194,7 +210,7 @@ class _HuaweiCloudServiceScreenState
194210 onTap: () {
195211 setState (() {
196212 _huaweiCloudCloudServiceConfig! .enabled =
197- ! _huaweiCloudCloudServiceConfig! .enabled;
213+ ! _huaweiCloudCloudServiceConfig! .enabled;
198214 CloudServiceConfigDao .updateConfigEnabled (
199215 _huaweiCloudCloudServiceConfig! ,
200216 _huaweiCloudCloudServiceConfig! .enabled);
@@ -236,14 +252,14 @@ class _HuaweiCloudServiceScreenState
236252 onPressed: () async {
237253 try {
238254 appProvider.preventLock = true ;
239- windowManager.minimize ();
255+ if ( ResponsiveUtil . isDesktop ()) windowManager.minimize ();
240256 await ping ();
241257 } catch (e, t) {
242258 ILogger .error ("Failed to connect to huawei cloud" , e, t);
243259 IToast .show (appLocalizations.cloudConnectionError);
244260 } finally {
245261 appProvider.preventLock = false ;
246- windowManager.restore ();
262+ if ( ResponsiveUtil . isDesktop ()) windowManager.restore ();
247263 }
248264 },
249265 ),
@@ -266,7 +282,7 @@ class _HuaweiCloudServiceScreenState
266282 title: appLocalizations.cloudPulling);
267283 try {
268284 List <HuaweiCloudFileInfo >? files =
269- await _huaweiCloudCloudService! .listBackups ();
285+ await _huaweiCloudCloudService! .listBackups ();
270286 if (files == null ) {
271287 CustomLoadingDialog .dismissLoading ();
272288 IToast .show (appLocalizations.cloudPullFailed);
@@ -281,26 +297,24 @@ class _HuaweiCloudServiceScreenState
281297 BottomSheetBuilder .showBottomSheet (
282298 context,
283299 responsive: true ,
284- (dialogContext) =>
285- HuaweiCloudBackupsBottomSheet (
286- files: files,
287- cloudService: _huaweiCloudCloudService! ,
288- onSelected: (selectedFile) async {
289- var dialog = showProgressDialog (
290- appLocalizations.cloudPulling,
291- showProgress: true ,
292- );
293- Uint8List ? res =
300+ (dialogContext) => HuaweiCloudBackupsBottomSheet (
301+ files: files,
302+ cloudService: _huaweiCloudCloudService! ,
303+ onSelected: (selectedFile) async {
304+ var dialog = showProgressDialog (
305+ appLocalizations.cloudPulling,
306+ showProgress: true ,
307+ );
308+ Uint8List ? res =
294309 await _huaweiCloudCloudService! .downloadFile (
295- selectedFile.id,
296- onProgress: (c, t) {
297- dialog.updateProgress (progress: c / t);
298- },
299- );
300- ImportTokenUtil .importFromCloud (
301- context, res, dialog);
310+ selectedFile.id,
311+ onProgress: (c, t) {
312+ dialog.updateProgress (progress: c / t);
302313 },
303- ),
314+ );
315+ ImportTokenUtil .importFromCloud (context, res, dialog);
316+ },
317+ ),
304318 );
305319 } else {
306320 IToast .show (appLocalizations.cloudNoBackupFile);
@@ -340,16 +354,16 @@ class _HuaweiCloudServiceScreenState
340354 title: appLocalizations.cloudLogout,
341355 message: appLocalizations.cloudLogoutMessage,
342356 onTapConfirm: () async {
343- await _huaweiCloudCloudService! .signOut ();
344- setState (() {
345- _huaweiCloudCloudServiceConfig! .connected = false ;
346- _huaweiCloudCloudServiceConfig! .account = "" ;
347- _huaweiCloudCloudServiceConfig! .totalSize =
348- _huaweiCloudCloudServiceConfig! .remainingSize =
357+ await _huaweiCloudCloudService! .signOut ();
358+ setState (() {
359+ _huaweiCloudCloudServiceConfig! .connected = false ;
360+ _huaweiCloudCloudServiceConfig! .account = "" ;
361+ _huaweiCloudCloudServiceConfig! .totalSize =
362+ _huaweiCloudCloudServiceConfig! .remainingSize =
349363 _huaweiCloudCloudServiceConfig! .usedSize = - 1 ;
350- updateConfig (_huaweiCloudCloudServiceConfig! );
351- });
352- });
364+ updateConfig (_huaweiCloudCloudServiceConfig! );
365+ });
366+ });
353367 },
354368 ),
355369 ),
0 commit comments