aboutsummaryrefslogtreecommitdiff
path: root/src/model/key_table.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/model/key_table.rs')
-rw-r--r--src/model/key_table.rs9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/model/key_table.rs b/src/model/key_table.rs
index daea5473..7afa0337 100644
--- a/src/model/key_table.rs
+++ b/src/model/key_table.rs
@@ -152,7 +152,7 @@ pub struct KeyTable;
#[derive(Clone, Debug, Serialize, Deserialize)]
pub enum KeyFilter {
Deleted(DeletedFilter),
- Matches(String),
+ MatchesAndNotDeleted(String),
}
impl TableSchema for KeyTable {
@@ -166,10 +166,11 @@ impl TableSchema for KeyTable {
fn matches_filter(entry: &Self::E, filter: &Self::Filter) -> bool {
match filter {
KeyFilter::Deleted(df) => df.apply(entry.state.is_deleted()),
- KeyFilter::Matches(pat) => {
+ KeyFilter::MatchesAndNotDeleted(pat) => {
let pat = pat.to_lowercase();
- entry.key_id.to_lowercase().starts_with(&pat)
- || entry.name.get().to_lowercase() == pat
+ !entry.state.is_deleted()
+ && (entry.key_id.to_lowercase().starts_with(&pat)
+ || entry.name.get().to_lowercase() == pat)
}
}
}