added onTap to version number in settings to copy on click

pull/1423/head
ggurdin 1 year ago
parent 704e3bf7d1
commit 17613f4a85
No known key found for this signature in database
GPG Key ID: A01CB41737CBB478

@ -4,6 +4,7 @@ import 'package:fluffychat/utils/fluffy_share.dart';
import 'package:fluffychat/widgets/avatar.dart';
import 'package:fluffychat/widgets/matrix.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:future_loading_dialog/future_loading_dialog.dart';
import 'package:go_router/go_router.dart';
@ -18,14 +19,6 @@ class SettingsView extends StatelessWidget {
const SettingsView(this.controller, {super.key});
// #Pangea
Future<String> getAppVersion(BuildContext context) async {
final packageInfo = await PackageInfo.fromPlatform();
return L10n.of(context)!
.versionText(packageInfo.version, packageInfo.buildNumber);
}
// Pangea#
@override
Widget build(BuildContext context) {
final theme = Theme.of(context);
@ -218,14 +211,34 @@ class SettingsView extends StatelessWidget {
onTap: () => launchUrlString(AppConfig.termsOfServiceUrl),
trailing: const Icon(Icons.open_in_new_outlined),
),
FutureBuilder<String>(
future: getAppVersion(context),
FutureBuilder<PackageInfo>(
future: PackageInfo.fromPlatform(),
builder: (context, snapshot) {
if (snapshot.connectionState == ConnectionState.done) {
return ListTile(
leading: const Icon(Icons.info_outline),
trailing: const Icon(Icons.copy_outlined),
onTap: () async {
if (snapshot.data == null) return;
await Clipboard.setData(
ClipboardData(
text:
"${snapshot.data!.version}+${snapshot.data!.buildNumber}",
),
);
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text(L10n.of(context)!.copiedToClipboard),
),
);
},
title: Text(
snapshot.data ?? L10n.of(context)!.versionNotFound,
snapshot.data != null
? L10n.of(context)!.versionText(
snapshot.data!.version,
snapshot.data!.buildNumber,
)
: L10n.of(context)!.versionNotFound,
),
);
} else if (snapshot.hasError) {

Loading…
Cancel
Save