feat(keys): improve the key-export modal — auto-clear copy, inline QR, cleaner actions

- Auto-clear: the Copy button now routes through App::copySecretToClipboard, so a copied
  private/viewing key is wiped from the clipboard after ~45s (same protection as the seed) with
  a "auto-clears" notice — instead of the raw SetClipboardText that left it indefinitely.
- QR: once the key is revealed, a Show/Hide QR toggle renders the key's QR inline (via the same
  GenerateQRTexture/RenderQRCode widget the Receive tab uses) for scanning into another wallet.
  The QR texture is cached, regenerated on key change, and freed on hide/close/dismiss; hiding the
  key also hides its QR.
- Actions row tightened to Show/Hide · Copy · QR, and the key + QR texture are now cleared on any
  dismissal (Close button, scrim click, Esc), not just the Close button.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-10 20:59:06 -05:00
parent 4ee830c5dd
commit 2182c060e6
3 changed files with 61 additions and 6 deletions

View File

@@ -673,6 +673,8 @@ void I18n::loadBuiltinEnglish()
strings_["address_details"] = "Address Details";
strings_["view_on_explorer"] = "View on Explorer";
strings_["qr_code"] = "QR Code";
strings_["show_qr"] = "Show QR";
strings_["hide_qr"] = "Hide QR";
strings_["request_payment"] = "Request Payment";
// Transactions Tab