summaryrefslogtreecommitdiffstats
path: root/js/gdm/fingerprint.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/gdm/fingerprint.js')
-rw-r--r--js/gdm/fingerprint.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/js/gdm/fingerprint.js b/js/gdm/fingerprint.js
new file mode 100644
index 0000000..e23a77b
--- /dev/null
+++ b/js/gdm/fingerprint.js
@@ -0,0 +1,33 @@
+// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
+/* exported FprintManager */
+
+const Gio = imports.gi.Gio;
+
+const FprintManagerIface = `
+<node>
+<interface name="net.reactivated.Fprint.Manager">
+<method name="GetDefaultDevice">
+ <arg type="o" direction="out" />
+</method>
+</interface>
+</node>`;
+
+const FprintManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(FprintManagerIface);
+
+function FprintManager() {
+ var self = new Gio.DBusProxy({ g_connection: Gio.DBus.system,
+ g_interface_name: FprintManagerInfo.name,
+ g_interface_info: FprintManagerInfo,
+ g_name: 'net.reactivated.Fprint',
+ g_object_path: '/net/reactivated/Fprint/Manager',
+ g_flags: Gio.DBusProxyFlags.DO_NOT_LOAD_PROPERTIES });
+
+ try {
+ self.init(null);
+ } catch (e) {
+ log(`Failed to connect to Fprint service: ${e.message}`);
+ return null;
+ }
+
+ return self;
+}