diff --git a/omemo/gtk/key.py b/omemo/gtk/key.py
index a1feca5..f5d71fd 100644
--- a/omemo/gtk/key.py
+++ b/omemo/gtk/key.py
@@ -94,6 +94,9 @@ class KeyDialog(Gtk.Dialog):
self.show_all()
def _filter_func(self, row, _user_data):
+ search_text = self._ui.search.get_text()
+ if search_text and search_text.lower() not in str(row.jid):
+ return False
if self._show_inactive:
return True
return row.active
@@ -111,6 +114,9 @@ class KeyDialog(Gtk.Dialog):
return -1 if row1.trust > row2.trust else 1
return 0
+ def _on_search_changed(self, _entry):
+ self._ui.list.invalidate_filter()
+
def update(self):
self._ui.list.foreach(self._ui.list.remove)
self._load_fingerprints(self._own_jid)
diff --git a/omemo/gtk/key.ui b/omemo/gtk/key.ui
index 07a575a..1de4f05 100644
--- a/omemo/gtk/key.ui
+++ b/omemo/gtk/key.ui
@@ -61,6 +61,20 @@ you have to install python-qrcode
+
True
False
@@ -193,7 +207,25 @@ you have to install python-qrcode
-
+
+
+ 1
+ 0
+