AC_SUBST(DLOG_CFLAGS)
AC_SUBST(DLOG_LIBS)
+PKG_CHECK_MODULES(ELEMENTARY, elementary)
+AC_SUBST(ELEMENTARY_CFLAGS)
+AC_SUBST(ELEMENTARY_LIBS)
+
+PKG_CHECK_MODULES(EVAS, evas)
+AC_SUBST(EVAS_CFLAGS)
+AC_SUBST(EVAS_LIBS)
+
# for testsuite
AC_ARG_ENABLE(sdk, AC_HELP_STRING([--enable-sdk], [sdk build]),
BuildRequires: pkgconfig(iniparser)
BuildRequires: pkgconfig(capi-network-wifi-direct)
BuildRequires: pkgconfig(dlog)
+BuildRequires: pkgconfig(elementary)
+BuildRequires: pkgconfig(evas)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
libmmfwfdsink_la_CFLAGS = -I$(srcdir)/include \
$(MMCOMMON_CFLAGS) \
$(GST_CFLAGS) \
+ $(EVAS_CFLAGS) \
+ $(ELEMENTARY_CFLAGS) \
$(GST_PLUGINS_BASE_CFLAGS) \
$(GST_VIDEO_CFLAGS) \
$(MM_WFD_COMMON_CFLAGS) \
libmmfwfdsink_la_LIBADD = $(GST_LIBS) \
$(GST_PLUGINS_BASE_LIBS) \
$(GST_BASE_LIBS) \
+ $(ELEMENTARY_LIBS) \
+ $(EVAS_LIBS) \
$(top_builddir)/common/libwfdcommon.la \
$(MMCOMMON_LIBS) \
$(MM_WFD_COMMON_LIBS) \
#include <gst/gst.h>
#include <gst/video/videooverlay.h>
+#include <Elementary.h>
#include "mm_wfd_sink_util.h"
#include "mm_wfd_sink_priv.h"
case MM_DISPLAY_SURFACE_X: {
int *object = NULL;
+ Evas_Object *obj = NULL;
+ const char *object_type = NULL;
+ unsigned int g_xwin = 0;
/* x surface */
- mm_attrs_get_data_by_name(wfd_sink->attrs, "display_overlay", (void **)&object);
- if (object) {
- xid = *object;
- wfd_sink_debug("xid = %lu", xid);
- gst_video_overlay_set_window_handle(GST_VIDEO_OVERLAY(video_sink), xid);
- } else {
- wfd_sink_warning("Handle is NULL. Set xid as 0.. but, it's not recommended.");
- gst_video_overlay_set_window_handle(GST_VIDEO_OVERLAY(video_sink), 0);
+ mm_attrs_get_data_by_name(wfd_sink->attrs, "display_overlay", &object);
+
+ if(object != NULL) {
+ obj = (Evas_Object *)object;
+ object_type = evas_object_type_get(obj);
+
+ wfd_sink_debug("window object type : %s", object_type);
+
+ if (!strcmp(object_type, "elm_win"))
+ g_xwin = elm_win_xwindow_get(obj);
}
+
+ wfd_sink_debug("xid = %lu", g_xwin);
+ gst_video_overlay_set_window_handle(GST_VIDEO_OVERLAY(video_sink), g_xwin);
+
}
break;