add isSensitive to copy indicator (#3183)

* add copy indicator on tx details screen * add isSensitive field

malik1004x committed Apr 15, 2026 at 00:33 UTC a0355ff41444158dc6131b9c05505ec2a479ee70
2 files changed +6 -3
lib/new-ui/widgets/copy_wrapper.dart
+4 -1
@@ -1,5 +1,6 @@
1 import 'dart:io';
2
3 +import 'package:cake_wallet/utils/clipboard_util.dart';
4 import 'package:device_info_plus/device_info_plus.dart';
5 import 'package:flutter/material.dart';
6 import 'package:flutter/services.dart';
@@ -8,10 +9,12 @@ class CopyWrapper extends StatefulWidget {
9 const CopyWrapper(
10 {super.key,
11 this.data,
12 + this.isSensitive = false,
13 required this.builder,
14 this.duration = const Duration(milliseconds: 1200)});
15
16 final ClipboardData? data;
17 + final bool isSensitive;
18 final Widget Function(BuildContext, bool) builder;
19 final Duration duration;
20
@@ -24,7 +27,7 @@ class _CopyWrapperState extends State<CopyWrapper> {
27
28 void handleCopy() async {
29 if (widget.data == null) return;
27 - Clipboard.setData(widget.data!);
30 + ClipboardUtil.setSensitiveDataToClipboard(widget.data!, isSensitive: widget.isSensitive);
31 if (await shouldShowCopied()) {
32 setState(() => copied = true);
33 Future.delayed(widget.duration, () {
lib/utils/clipboard_util.dart
+2 -2
@@ -4,8 +4,8 @@ import 'package:cake_wallet/utils/device_info.dart';
4 import 'package:sensitive_clipboard/sensitive_clipboard.dart';
5
6 class ClipboardUtil {
7 - static Future<void> setSensitiveDataToClipboard(ClipboardData data) async {
8 - if (DeviceInfo.instance.isMobile) {
7 + static Future<void> setSensitiveDataToClipboard(ClipboardData data, {bool isSensitive = true}) async {
8 + if (isSensitive && DeviceInfo.instance.isMobile) {
9 await SensitiveClipboard.copy(data.text);
10 return;
11 }