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; }