ui: improve error readablity

This commit is contained in:
Simon Ding
2024-11-05 12:43:17 +08:00
parent 949b6e5188
commit f1c4e306f4
13 changed files with 44 additions and 26 deletions

View File

@@ -148,7 +148,7 @@ class _ActivityPageState extends ConsumerState<ActivityPage>
}, },
)); ));
}, },
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()); loading: () => const MyProgressIndicator());
}) })
], ],

View File

@@ -94,7 +94,7 @@ class _AuthState extends ConsumerState<AuthSettings> {
], ],
)); ));
}, },
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()); loading: () => const MyProgressIndicator());
} }
} }

View File

@@ -35,7 +35,7 @@ class _DownloaderState extends ConsumerState<DownloaderSettings> {
onTap: () => showDownloadClientDetails(DownloadClient()), onTap: () => showDownloadClientDetails(DownloadClient()),
child: const Icon(Icons.add)); child: const Icon(Icons.add));
})), })),
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()); loading: () => const MyProgressIndicator());
} }

View File

@@ -170,7 +170,7 @@ class _GeneralState extends ConsumerState<GeneralSettings> {
), ),
); );
}, },
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()); loading: () => const MyProgressIndicator());
} }
} }

View File

@@ -35,7 +35,7 @@ class _ImportlistState extends ConsumerState<Importlist> {
child: const Icon(Icons.add)); child: const Icon(Icons.add));
}), }),
), ),
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()); loading: () => const MyProgressIndicator());
} }

View File

@@ -33,7 +33,7 @@ class _IndexerState extends ConsumerState<IndexerSettings> {
child: const Icon(Icons.add)); child: const Icon(Icons.add));
}), }),
), ),
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()); loading: () => const MyProgressIndicator());
} }

View File

@@ -48,7 +48,7 @@ class _NotifierState extends ConsumerState<NotifierSettings> {
child: const Icon(Icons.add)); child: const Icon(Icons.add));
}), }),
), ),
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()); loading: () => const MyProgressIndicator());
} }

View File

@@ -79,7 +79,7 @@ class ProwlarrSettingState extends ConsumerState<ProwlarrSettingPage> {
], ],
), ),
), ),
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()); loading: () => const MyProgressIndicator());
} }
} }

View File

@@ -35,7 +35,7 @@ class _StorageState extends ConsumerState<StorageSettings> {
child: const Icon(Icons.add)); child: const Icon(Icons.add));
}), }),
), ),
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()); loading: () => const MyProgressIndicator());
} }

View File

@@ -56,7 +56,7 @@ class _SystemPageState extends ConsumerState<SystemPage> {
]); ]);
})); }));
}, },
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()) loading: () => const MyProgressIndicator())
], ],
), ),
@@ -111,7 +111,7 @@ class _SystemPageState extends ConsumerState<SystemPage> {
]), ]),
]); ]);
}, },
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()) loading: () => const MyProgressIndicator())
], ],
), ),
@@ -185,7 +185,7 @@ class _SystemPageState extends ConsumerState<SystemPage> {
], ],
); );
}, },
error: (err, trace) => Text("$err"), error: (err, trace) => PoError(msg: "网络错误", err: err),
loading: () => const MyProgressIndicator()) loading: () => const MyProgressIndicator())
], ],
) )

View File

@@ -183,9 +183,7 @@ class _TvDetailsPageState extends ConsumerState<TvDetailsPage> {
], ],
); );
}, },
error: (err, trace) { error: (err, trace) => PoError(msg: "网络错误", err: err),
return Text("$err");
},
loading: () => const MyProgressIndicator())); loading: () => const MyProgressIndicator()));
} }

View File

@@ -43,17 +43,17 @@ class WelcomePageState extends ConsumerState<WelcomePage> {
//alignment: Alignment.bottomRight, //alignment: Alignment.bottomRight,
children: [ children: [
() { () {
return switch (data) { return data.when(
AsyncData(:final value) => SingleChildScrollView( data: (value) => SingleChildScrollView(
child: Wrap( child: Wrap(
alignment: WrapAlignment.start, alignment: WrapAlignment.start,
spacing: isSmallScreen(context) ? 0 : 10, spacing: isSmallScreen(context) ? 0 : 10,
runSpacing: isSmallScreen(context) ? 10 : 20, runSpacing: isSmallScreen(context) ? 10 : 20,
children: getMediaAll(value), children: getMediaAll(value),
), ),
), ),
_ => const MyProgressIndicator(), error: (err, trace) => PoError(msg: "网络错误", err: err),
}; loading: () => const MyProgressIndicator());
}(), }(),
getMoreButtonAndActions(uri) getMoreButtonAndActions(uri)
], ],

View File

@@ -281,3 +281,23 @@ class _LoadingTextButtonState extends State<LoadingTextButton> {
); );
} }
} }
class PoError extends StatelessWidget {
const PoError({super.key, required this.msg, required this.err});
final String msg;
final dynamic err;
@override
Widget build(BuildContext context) {
return Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text("$msg ", style: TextStyle(color:Theme.of(context).colorScheme.error),),
Tooltip(
message: "$err",
child: Icon(Icons.info,color: Theme.of(context).colorScheme.error,),
)
],
);
}
}