memset(_wl_comp, 0, sizeof(*_wl_comp));
+// open display, get X connection, create cursor
+
if (!_e_mod_comp_wl_comp_egl_init())
{
EINA_LOG_ERR("Failed to init EGL\n");
_wl_comp->destroy = _e_mod_comp_wl_comp_destroy;
+// weston_compositor_init
+
if (!wl_display_add_global(_wl_disp, &wl_compositor_interface, _wl_comp,
_e_mod_comp_wl_comp_bind))
{
_wl_comp->shm = wl_shm_init(_wl_disp, &_wl_shm_callbacks);
+ _wl_comp->image_target_texture_2d =
+ (void *) eglGetProcAddress("glEGLImageTargetTexture2DOES");
+ _wl_comp->image_target_renderbuffer_storage = (void *)
+ eglGetProcAddress("glEGLImageTargetRenderbufferStorageOES");
+ _wl_comp->create_image = (void *) eglGetProcAddress("eglCreateImageKHR");
+ _wl_comp->destroy_image = (void *) eglGetProcAddress("eglDestroyImageKHR");
+
_wl_comp->bind_display =
(void *)eglGetProcAddress("eglBindWaylandDisplayWL");
_wl_comp->unbind_display =
wl_list_init(&_wl_comp->surfaces);
+// spring init
+// screenshooter init
+
wl_data_device_manager_init(_wl_disp);
glActiveTexture(GL_TEXTURE0);