feat: start work on edit mode

This commit is contained in:
electria 2026-08-29 13:07:19 -07:00
commit a38b0ca3dc
Signed by: electria
SSH key fingerprint: SHA256:8LlB3ucPbBHqozqkhsNbaV5oG3SlzzqUj8FZDL6IPQs

View file

@ -39,6 +39,7 @@ enum Message {
ChangeQuery(String),
Copy,
Edit,
FocusNext,
FocusPrevious,
@ -65,6 +66,8 @@ struct State {
selected_field: db::BasicField,
query: String,
editing_entry: Option<keepass::db::EntryId>,
status: Cow<'static, str>,
error: Cow<'static, str>,
}
@ -182,6 +185,13 @@ impl State {
}
}
Message::Edit => {
self.editing_entry = self
.db_view
.get(self.selected_entry)
.map(|entry| entry.id());
}
Message::FocusNext => return widget::operation::focus_next(),
Message::FocusPrevious => return widget::operation::focus_previous(),
Message::FocusSearch => return widget::operation::focus("search"),
@ -404,6 +414,8 @@ impl State {
Key::Character("y" | "c") if db_loaded => Some(Message::Copy),
Key::Character("e") if db_loaded => Some(Message::Edit),
Key::Character("q") => Some(Message::Quit),
// ignore unused keys