Tray: Phosphor icons, click-to-copy fields with feedback, steady plot column

- Bundle egui-phosphor (pinned to egui 0.31) and register its glyphs, so the
  icon buttons render real icons instead of tofu: refresh, shuffle (generate
  secret), pencil/check/x (rename host), copy (Copy secret).
- Copying is now the field itself, not a separate button: clicking the
  shortened device id, the network name, the network id, a range or an address
  copies the full value and the field flashes green "Copied" for a second
  (tracked in egui temp memory, so it clears itself). The standalone copy
  buttons are gone.
- In the devices window the connected-peers "rate / plot" column put the rate
  and the inline sparkline in a shared row, so the plot shifted as the rate
  text changed width ("0 B/s" vs "1.1 kB/s"). The rate now sits in a
  fixed-width, truncating cell, so the plot stays put.

Builds and is clippy-clean (-D warnings) on macOS; the UI has not been run in
this headless session.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
UltradesuandClaude Opus 4.8 committed 2026-10-02 16:00:23 +01:00
1 parent de56258eb1
commit db01c58a6f
6 files changed
+96 -61

No files matched your search

Generated
+12 -2
View File
@@ -187,7 +187,7 @@ dependencies = [
"objc2-foundation 0.3.2",
"parking_lot",
"percent-encoding",
"windows-sys 0.52.0",
"windows-sys 0.60.2",
"x11rb",
]
@@ -1454,6 +1454,15 @@ dependencies = [
"profiling",
]
[[package]]
name = "egui-phosphor"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "171d57331491e92f0a7c73fad1088716e3200984309f4f8684731b750cee1378"
dependencies = [
"egui",
]
[[package]]
name = "egui-wgpu"
version = "0.31.1"
@@ -5046,7 +5055,7 @@ dependencies = [
"errno",
"libc",
"linux-raw-sys 0.4.15",
"windows-sys 0.52.0",
"windows-sys 0.59.0",
]
[[package]]
@@ -6319,6 +6328,7 @@ name = "tsunagi-tray"
version = "0.1.0"
dependencies = [
"eframe",
"egui-phosphor",
"tokio",
"tracing",
"tracing-subscriber",