summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/manager.c11
-rw-r--r--src/ug.c15
2 files changed, 26 insertions, 0 deletions
diff --git a/src/manager.c b/src/manager.c
index 015e1eb..5c9cbed 100644
--- a/src/manager.c
+++ b/src/manager.c
@@ -29,6 +29,7 @@
#include <utilX.h>
#include <X11/Xatom.h>
#include <X11/Xutil.h>
+#include <Ecore_X.h>
#endif
#include <Ecore.h>
@@ -910,6 +911,16 @@ int ugman_init(Display *disp, Window xid, void *win, enum ug_option opt)
}
#endif
+int ugman_init_efl(Evas_Object *win, enum ug_option opt)
+{
+#ifndef WAYLAND
+ Ecore_X_Window xwin = elm_win_xwindow_get(win);
+ if (xwin)
+ return ugman_init((Display *)ecore_x_display_get(), xwin, win, opt);
+#endif
+ return -1;
+}
+
int ugman_resume(void)
{
/* RESUME */
diff --git a/src/ug.c b/src/ug.c
index af5bc47..60719bc 100644
--- a/src/ug.c
+++ b/src/ug.c
@@ -111,6 +111,21 @@ UG_API int ug_init(Display *disp, Window xid, void *win, enum ug_option opt)
}
#endif
+UG_API int ug_init_efl(Evas_Object *win, enum ug_option opt)
+{
+ if (!win) {
+ _ERR("ug_init_efl() failed: Invalid arguments");
+ return -1;
+ }
+
+ if (opt < UG_OPT_INDICATOR_ENABLE || opt >= UG_OPT_MAX) {
+ _ERR("ug_init_efl() failed: Invalid option");
+ return -1;
+ }
+
+ return ugman_init_efl(win, opt);
+}
+
UG_API int ug_pause(void)
{
return ugman_pause();