diff --git a/lan-mouse-cli/src/lib.rs b/lan-mouse-cli/src/lib.rs
index a046495..c12db06 100644
--- a/lan-mouse-cli/src/lib.rs
+++ b/lan-mouse-cli/src/lib.rs
@@ -274,6 +274,12 @@ impl Cli {
FrontendEvent::EmulationStatus(s) => {
eprintln!("emulation status: {s:?}")
}
+ FrontendEvent::AuthorizedUpdated(keys) => {
+ eprintln!("authorized keys changed:");
+ for key in keys {
+ eprintln!("{key}");
+ }
+ }
}
}
diff --git a/lan-mouse-gtk/resources/fingerprint_window.ui b/lan-mouse-gtk/resources/fingerprint_window.ui
index f042b74..3cbfb34 100644
--- a/lan-mouse-gtk/resources/fingerprint_window.ui
+++ b/lan-mouse-gtk/resources/fingerprint_window.ui
@@ -47,7 +47,8 @@
vertical
center
-
+
+
diff --git a/lan-mouse-gtk/resources/resources.gresource.xml b/lan-mouse-gtk/resources/resources.gresource.xml
index bec7393..2a6812f 100644
--- a/lan-mouse-gtk/resources/resources.gresource.xml
+++ b/lan-mouse-gtk/resources/resources.gresource.xml
@@ -4,6 +4,7 @@
window.ui
fingerprint_window.ui
client_row.ui
+ key_row.ui
de.feschber.LanMouse.svg
diff --git a/lan-mouse-gtk/resources/window.ui b/lan-mouse-gtk/resources/window.ui
index 58dcbd0..4233915 100644
--- a/lan-mouse-gtk/resources/window.ui
+++ b/lan-mouse-gtk/resources/window.ui
@@ -240,7 +240,7 @@
- list-add-symbolic
+ auth-fingerprint-symbolic
Add
@@ -250,10 +250,10 @@
-
+
none
-
+
no fingerprints!
add a public key fingerprint via the + button
diff --git a/lan-mouse-gtk/src/fingerprint_window.rs b/lan-mouse-gtk/src/fingerprint_window.rs
index 6f51ad3..9791c73 100644
--- a/lan-mouse-gtk/src/fingerprint_window.rs
+++ b/lan-mouse-gtk/src/fingerprint_window.rs
@@ -1,13 +1,7 @@
mod imp;
-use adw::prelude::*;
-use adw::subclass::prelude::*;
-use glib::{clone, Object};
-use gtk::{
- gio,
- glib::{self, closure_local},
- ListBox, NoSelection,
-};
+use glib::Object;
+use gtk::{gio, glib};
glib::wrapper! {
pub struct FingerprintWindow(ObjectSubclass)
diff --git a/lan-mouse-gtk/src/fingerprint_window/imp.rs b/lan-mouse-gtk/src/fingerprint_window/imp.rs
index ad87a3c..f6786cb 100644
--- a/lan-mouse-gtk/src/fingerprint_window/imp.rs
+++ b/lan-mouse-gtk/src/fingerprint_window/imp.rs
@@ -1,12 +1,20 @@
+use std::sync::OnceLock;
+
+use adw::prelude::*;
use adw::subclass::prelude::*;
use glib::subclass::InitializingObject;
-use gtk::{glib, template_callbacks, CompositeTemplate, Entry};
+use gtk::{
+ glib::{self, subclass::Signal},
+ template_callbacks, Button, CompositeTemplate, Text,
+};
#[derive(CompositeTemplate, Default)]
#[template(resource = "/de/feschber/LanMouse/fingerprint_window.ui")]
pub struct FingerprintWindow {
- // #[template_child]
- // pub fingerprint_entry: TemplateChild,
+ #[template_child]
+ pub text: TemplateChild,
+ #[template_child]
+ pub confirm_button: TemplateChild