//! App-specific picker actions. Boxed into `PickerAction::Custom` and
//! downcast in the dispatcher.
use std::path::PathBuf;
#[allow(dead_code)]
pub enum AppAction {
OpenPath(PathBuf),
OpenPathAtLine(PathBuf, u32),
ShowCommit(String),
CheckoutBranch(String),
CheckoutTag(String),
FetchRemote(String),
SwitchSlot(usize),
StashApply(usize),
StashPop(usize),
StashDrop(usize),
/// Jump the active buffer's cursor to a specific (0-based) row + col.
/// Used by the diagnostic picker to land on the diag start position.
JumpToRowCol(usize, usize),
/// Apply the code action at index `i` from `App::pending_code_actions`.
/// Phase 5 LSP code actions.
ApplyCodeAction(usize),
/// Install (or reinstall) the named anvil tool.
AnvilInstall(String),
/// Uninstall the named anvil tool.
AnvilUninstall(String),
/// Update the named anvil tool if outdated.
AnvilUpdate(String),
/// No-op placeholder used by the picker for already-installed tools.
AnvilNoOp(String),
}