feat: Reference Manager help window with web shortcomings

The toolbar Help button was a disabled tip that could never be clicked. It now opens a modal window explaining the manager on the web build: read-only reference list, disabled Attach/Refresh/Change Path (no filesystem access or native file pickers, so no add/reload/repath and no previews), nested read-only rows, and saved-drawing requirement for relative paths.

Includes a Report-an-issue button opening the GitHub issues page and a Close button; wired as ModalKind::XrefHelp through the shared modal frame so dismissal works on native and web.
This commit is contained in:
Karim Jerbi committed 2026-09-17 15:40:39 +01:00
1 parent 8e05ed552c
commit ef0c6bf403
6 files changed
+122 -2

No files matched your search

+7 -2
View File
@@ -22,6 +22,8 @@ use std::time::{SystemTime, UNIX_EPOCH};
/// read-only list renders everywhere.
const IS_WASM: bool = cfg!(target_arch = "wasm32");
/// Font size for table cells (mirrors `layers.rs`).
const FONT_SZ: f32 = ROW_H * 0.42; // ≈11 px at ROW_H=26
/// Fixed table height so the details pane below keeps stable space.
@@ -784,9 +786,12 @@ impl XrefManagerPanel {
)
}
};
let help = toolbar_tip(
// Help opens a modal window explaining the manager (and its web
// shortcomings): the old disabled tip could never be clicked, and
// an anchored dropdown squeezes the text into the toolbar's width.
let help = toolbar_btn(
crate::t!("Help").into_owned(),
crate::t!("Reference Manager — select rows, then Detach, Unload, Reload, Bind, Overlay, or a Change Path mode.").into_owned(),
Some(Message::XrefHelpOpen),
false,
);
let toolbar = container(