From 88c46e5bbfa1c23756d82d6d18decdd35e878b9f Mon Sep 17 00:00:00 2001
From: vjrj <vjrj@comunes.org>
Date: Thu, 8 Jun 2023 23:57:05 +0200
Subject: [PATCH] Copy qr also in payments

---
 lib/ui/ui_helpers.dart                               |  9 ++-------
 .../widgets/second_screen/card_terminal_screen.dart  | 12 +++++++-----
 2 files changed, 9 insertions(+), 12 deletions(-)

diff --git a/lib/ui/ui_helpers.dart b/lib/ui/ui_helpers.dart
index bc04cee0..d3849fc6 100644
--- a/lib/ui/ui_helpers.dart
+++ b/lib/ui/ui_helpers.dart
@@ -40,13 +40,8 @@ void showTooltip(BuildContext context, String title, String message) {
   );
 }
 
-void copyPublicKeyToClipboard(BuildContext context) {
-  /* final DataWriterItem item = DataWriterItem();
-  item.add(Formats.plainText(SharedPreferencesHelper().getPubKey()));
-  ClipboardWriter.instance.write(<DataWriterItem>[item]).then((dynamic value) =>
-      ScaffoldMessenger.of(context).showSnackBar(
-          SnackBar(content: Text(tr('key_copied_to_clipboard'))))); */
-  FlutterClipboard.copy(SharedPreferencesHelper().getPubKey()).then(
+void copyPublicKeyToClipboard(BuildContext context, [String? uri]) {
+  FlutterClipboard.copy(uri ?? SharedPreferencesHelper().getPubKey()).then(
       (dynamic value) => ScaffoldMessenger.of(context).showSnackBar(
           SnackBar(content: Text(tr('key_copied_to_clipboard')))));
 }
diff --git a/lib/ui/widgets/second_screen/card_terminal_screen.dart b/lib/ui/widgets/second_screen/card_terminal_screen.dart
index 6dbe17df..5036d1b9 100644
--- a/lib/ui/widgets/second_screen/card_terminal_screen.dart
+++ b/lib/ui/widgets/second_screen/card_terminal_screen.dart
@@ -16,6 +16,10 @@ class CardTerminalScreen extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
+    final String duniterUri = getQrUri(
+        pubKey: SharedPreferencesHelper().getPubKey(),
+        locale: context.locale.toLanguageTag(),
+        amount: amount);
     return Card(
       key: receiveQrKey,
       elevation: 8,
@@ -90,11 +94,9 @@ class CardTerminalScreen extends StatelessWidget {
                 child: Column(children: <Widget>[
               if (!amount.contains('+'))
                 Expanded(
-                    child: QrImage(
-                  data: getQrUri(
-                      pubKey: SharedPreferencesHelper().getPubKey(),
-                      locale: context.locale.toLanguageTag(),
-                      amount: amount),
+                    child: GestureDetector(
+                  onTap: () => copyPublicKeyToClipboard(context, duniterUri),
+                  child: QrImage(data: duniterUri),
                   //   size: smallScreen(context) ? 95.0 : 140.0)
                 ))
             ])),
-- 
GitLab