From a0355ff41444158dc6131b9c05505ec2a479ee70 Mon Sep 17 00:00:00 2001 From: malik1004x Date: Wed, 15 Apr 2026 00:33:37 +0200 Subject: [PATCH] add isSensitive to copy indicator (#3183) * add copy indicator on tx details screen * add isSensitive field --- lib/new-ui/widgets/copy_wrapper.dart | 5 ++++- lib/utils/clipboard_util.dart | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/new-ui/widgets/copy_wrapper.dart b/lib/new-ui/widgets/copy_wrapper.dart index 254d02f5d..83ed13a47 100644 --- a/lib/new-ui/widgets/copy_wrapper.dart +++ b/lib/new-ui/widgets/copy_wrapper.dart @@ -1,5 +1,6 @@ import 'dart:io'; +import 'package:cake_wallet/utils/clipboard_util.dart'; import 'package:device_info_plus/device_info_plus.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; @@ -8,10 +9,12 @@ class CopyWrapper extends StatefulWidget { const CopyWrapper( {super.key, this.data, + this.isSensitive = false, required this.builder, this.duration = const Duration(milliseconds: 1200)}); final ClipboardData? data; + final bool isSensitive; final Widget Function(BuildContext, bool) builder; final Duration duration; @@ -24,7 +27,7 @@ class _CopyWrapperState extends State { void handleCopy() async { if (widget.data == null) return; - Clipboard.setData(widget.data!); + ClipboardUtil.setSensitiveDataToClipboard(widget.data!, isSensitive: widget.isSensitive); if (await shouldShowCopied()) { setState(() => copied = true); Future.delayed(widget.duration, () { diff --git a/lib/utils/clipboard_util.dart b/lib/utils/clipboard_util.dart index 2874e30ef..a09200f27 100644 --- a/lib/utils/clipboard_util.dart +++ b/lib/utils/clipboard_util.dart @@ -4,8 +4,8 @@ import 'package:cake_wallet/utils/device_info.dart'; import 'package:sensitive_clipboard/sensitive_clipboard.dart'; class ClipboardUtil { - static Future setSensitiveDataToClipboard(ClipboardData data) async { - if (DeviceInfo.instance.isMobile) { + static Future setSensitiveDataToClipboard(ClipboardData data, {bool isSensitive = true}) async { + if (isSensitive && DeviceInfo.instance.isMobile) { await SensitiveClipboard.copy(data.text); return; }