web: provide a direct access to the configured web engine class.

This commit is contained in:
Cedric BAIL 2016-03-14 16:25:18 -07:00
parent 73ea27f034
commit bbffd68c0b
4 changed files with 24 additions and 1 deletions

View File

@ -95,6 +95,12 @@
#include "elm_web_common.h"
#ifdef EFL_EO_API_SUPPORT
#include "elm_web_eo.h"
#undef ELM_WEB_CLASS
#define ELM_WEB_CLASS elm_web_real_class_get()
EAPI const Eo_Class *elm_web_real_class_get(void);
#endif
#ifndef EFL_NOLEGACY_API_SUPPORT
#include "elm_web_legacy.h"

View File

@ -9,7 +9,7 @@
#include "elm_priv.h"
#include "elm_widget_web.h"
#define MY_CLASS ELM_WEB_CLASS
#define MY_CLASS elm_web_class_get()
#define MY_CLASS_NAME "Elm_Web"
#define MY_CLASS_NAME_LEGACY "elm_web"
@ -81,6 +81,14 @@ elm_web_add(Evas_Object *parent)
return eo_add(ewm.class_get(), parent);
}
EAPI const Eo_Class *
elm_web_real_class_get(void)
{
if (!ewm.class_get) return NULL;
return ewm.class_get();
}
EOLIAN static Eo *
_elm_web_eo_base_constructor(Eo *obj, Elm_Web_Data *sd)
{
@ -213,4 +221,7 @@ _elm_web_init(const char *engine)
return EINA_TRUE;
}
#undef ELM_WEB_CLASS
#define ELM_WEB_CLASS elm_web_class_get()
#include "elm_web.eo.c"

View File

@ -353,4 +353,7 @@ ewm_class_get(void)
return elm_web_none_class_get();
}
#undef ELM_WEB_CLASS
#define ELM_WEB_CLASS elm_web_class_get()
#include "elm_web_none.eo.c"

View File

@ -1151,4 +1151,7 @@ ewm_class_get(void)
return elm_web_webkit2_class_get();
}
#undef ELM_WEB_CLASS
#define ELM_WEB_CLASS elm_web_class_get()
#include "elm_web_webkit2.eo.c"