breadhelp 0.2.0: live guided tour overlay replacing static onboarding
Replaces the old in-window onboarding wizard with a real screen-wide tour: dim + spotlight cutout around the actual on-screen component (breadbar, breadbox), floating callout teaching the shortcut, and event-driven confirmation via real Hyprland/breadd signals instead of click-through fakery.
This commit is contained in:
parent
fea8f83204
commit
29b2445573
20 changed files with 1077 additions and 298 deletions
|
|
@ -19,6 +19,12 @@ pub struct Action {
|
|||
/// From a breadd Lua module (e.g. `breadhelp-suggest.lua`) reacting to a
|
||||
/// system event. Resolved to banner text by `services::breadd::resolve`.
|
||||
pub suggest: Option<String>,
|
||||
/// From `breadhelp-tour.lua` forwarding a bread/Hyprland event (window
|
||||
/// opened, layer opened, workspace changed, or a rebind-chained ping) as
|
||||
/// a candidate "the user just did the thing" signal for the live tour.
|
||||
/// Only acted on if a tour is currently waiting for this exact id —
|
||||
/// see the crash-safety note on `ui::tour`.
|
||||
pub tour_event: Option<String>,
|
||||
}
|
||||
|
||||
pub fn parse(args: &[std::ffi::OsString]) -> Action {
|
||||
|
|
@ -31,6 +37,8 @@ pub fn parse(args: &[std::ffi::OsString]) -> Action {
|
|||
action.autostart = true;
|
||||
} else if arg == "--suggest" {
|
||||
action.suggest = it.next().and_then(|s| s.to_str()).map(str::to_string);
|
||||
} else if arg == "--tour-event" {
|
||||
action.tour_event = it.next().and_then(|s| s.to_str()).map(str::to_string);
|
||||
}
|
||||
}
|
||||
action
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue