Comp Module: Add code for allowing comp module to render wayland

clients (incomplete still).

NB: Just adding this code so that Gwanglim Lee can see the code.



SVN revision: 67398
This commit is contained in:
Christopher Michael 2012-01-20 18:40:39 +00:00
parent c1a7b52698
commit 7b37b6a28b
4 changed files with 1731 additions and 3 deletions

View File

@ -16,9 +16,11 @@ INCLUDES = -I. \
-I$(top_srcdir)/src/bin \
-I$(top_builddir)/src/bin \
-I$(top_srcdir)/src/modules \
@e_cflags@
@e_cflags@ @WAYLAND_CFLAGS@
pkgdir = $(libdir)/enlightenment/modules/$(MODULE)/$(MODULE_ARCH)
pkg_LTLIBRARIES = module.la
module_la_SOURCES = e_mod_main.c \
e_mod_main.h \
e_mod_config.c \
@ -28,9 +30,11 @@ module_la_SOURCES = e_mod_main.c \
e_mod_comp_update.c \
e_mod_comp_update.h \
e_mod_comp_cfdata.c \
e_mod_comp_cfdata.h
e_mod_comp_cfdata.h \
e_mod_comp_wayland.h \
e_mod_comp_wayland.c
module_la_LIBADD = @e_libs@ @dlopen_libs@
module_la_LIBADD = @e_libs@ @dlopen_libs@ @WAYLAND_LIBS@
module_la_LDFLAGS = -module -avoid-version
module_la_DEPENDENCIES = $(top_builddir)/config.h

View File

@ -2,6 +2,9 @@
#include "e_mod_main.h"
#include "e_mod_comp.h"
#include "e_mod_comp_update.h"
#ifdef HAVE_WAYLAND
#include "e_mod_comp_wayland.h"
#endif
#define OVER_FLOW 2
@ -3483,6 +3486,12 @@ e_mod_comp_init(void)
"or Ecore was built without XDamage support."));
return 0;
}
#ifdef HAVE_WAYLAND
if (!e_mod_comp_wayland_init())
EINA_LOG_ERR("Failed to initialize Wayland Client Support !!\n");
#endif
EINA_LIST_FOREACH(e_manager_list(), l, man)
{
E_Comp *c;
@ -3505,6 +3514,10 @@ e_mod_comp_shutdown(void)
E_FREE_LIST(handlers, ecore_event_handler_del);
#ifdef HAVE_WAYLAND
e_mod_comp_wayland_shutdown();
#endif
if (damages) eina_hash_free(damages);
if (windows) eina_hash_free(windows);
if (borders) eina_hash_free(borders);

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,19 @@
#ifdef E_TYPEDEFS
#else
# ifndef E_MOD_COMP_WAYLAND_H
# define E_MOD_COMP_WAYLAND_H
# include <wayland-server.h>
# include <GLES2/gl2.h>
# include <GLES2/gl2ext.h>
# include <EGL/egl.h>
# include <EGL/eglext.h>
# include <pixman.h>
/* variables & functions here */
Eina_Bool e_mod_comp_wayland_init(void);
void e_mod_comp_wayland_shutdown(void);
void e_mod_comp_wayland_repaint(void);
# endif
#endif