From 1c7c5e3ff7478cc5ffafed5c6964d70f7db5253a Mon Sep 17 00:00:00 2001 From: Ben Westgate Date: Tue, 10 Nov 2026 22:12:19 +0000 Subject: [PATCH] gui: Show wallet record values large and dark The backup identifier and master fingerprint were small, dim row subtitles, hard to copy onto the wallet record. Rows that show values now use libadwaita's property style with the card-group text style, and the fingerprint is uppercase, as the CLI prints it. Claude-Session: https://claude.ai/code/session_01N8jLK8HGLaWJq2AJGmxPVe --- src/codex32_gui/pages.py | 4 +++- src/codex32_gui/style.py | 2 +- src/codex32_gui/wallet_setup.py | 4 ++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/codex32_gui/pages.py b/src/codex32_gui/pages.py index 6ed80813..a99f3a36 100644 --- a/src/codex32_gui/pages.py +++ b/src/codex32_gui/pages.py @@ -217,7 +217,9 @@ def _blank(flow: Gtk.FlowBox) -> None: def _rows(title: str, values: Sequence[tuple[str, str]]) -> Adw.PreferencesGroup: group = Adw.PreferencesGroup(title=title) for label, value in values: - group.add(Adw.ActionRow(title=label, subtitle=value, subtitle_selectable=True, use_markup=False)) + row = Adw.ActionRow(title=label, subtitle=value, subtitle_selectable=True, use_markup=False) + row.add_css_class("property") # libadwaita's style for a value: subtitle at full strength. + group.add(row) return group diff --git a/src/codex32_gui/style.py b/src/codex32_gui/style.py index 2bc7879b..4855421f 100644 --- a/src/codex32_gui/style.py +++ b/src/codex32_gui/style.py @@ -11,7 +11,7 @@ font-size: 1.1rem; letter-spacing: 0.06em; } -.card-group { +.card-group, .property .subtitle { font-family: monospace; font-size: 1.35rem; font-weight: bold; diff --git a/src/codex32_gui/wallet_setup.py b/src/codex32_gui/wallet_setup.py index b8e540d6..09bf2936 100644 --- a/src/codex32_gui/wallet_setup.py +++ b/src/codex32_gui/wallet_setup.py @@ -147,13 +147,13 @@ def network(core: BitcoinCore) -> str: def fingerprint(core: BitcoinCore, secret: MasterSeed) -> str: """Return the BIP32 master fingerprint, derived by Bitcoin Core out of process.""" - return core.fingerprint(secret).hex() + return core.fingerprint(secret).hex().upper() def identity(core: BitcoinCore, secret: MasterSeed) -> tuple[str, str]: """Return the recovered fingerprint and what the backup identifier says about the seed.""" fingerprint = core.fingerprint(secret) - return fingerprint.hex(), identifier_note(identifier_origin(secret, fingerprint)) + return fingerprint.hex().upper(), identifier_note(identifier_origin(secret, fingerprint)) def verify(core: BitcoinCore, secret: MasterSeed, expected: bytes | None, start: Timestamp) -> None: