aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/lib/ecore_libinput/Ecore_Libinput.h1
-rw-r--r--src/lib/ecore_libinput/ecore_libinput.c15
2 files changed, 16 insertions, 0 deletions
diff --git a/src/lib/ecore_libinput/Ecore_Libinput.h b/src/lib/ecore_libinput/Ecore_Libinput.h
index 6170bf8d90..89b768d6eb 100644
--- a/src/lib/ecore_libinput/Ecore_Libinput.h
+++ b/src/lib/ecore_libinput/Ecore_Libinput.h
@@ -32,6 +32,7 @@
/* # endif */
EAPI int ecore_libinput_init(void);
+EAPI int ecore_libinput_shutdown(void);
/* # ifdef __cplusplus */
/* } */
diff --git a/src/lib/ecore_libinput/ecore_libinput.c b/src/lib/ecore_libinput/ecore_libinput.c
index 6bcc6a376c..3b935898c2 100644
--- a/src/lib/ecore_libinput/ecore_libinput.c
+++ b/src/lib/ecore_libinput/ecore_libinput.c
@@ -43,3 +43,18 @@ log_err:
eina_err:
return --_ecore_libinput_init_count;
}
+
+EAPI int
+ecore_libinput_shutdown(void)
+{
+ if (--_ecore_libinput_init_count != 0) return _ecore_libinput_init_count;
+
+ eeze_shutdown();
+ ecore_event_shutdown();
+
+ eina_log_domain_unregister(_ecore_libinput_log_dom);
+ _ecore_libinput_log_dom = -1;
+
+ eina_shutdown();
+ return _ecore_libinput_init_count;
+}