xwayland: Create the wl_client which represents the window manager
process. Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
parent
ff9bd8395f
commit
ab96307ce3
|
@ -8,10 +8,12 @@ typedef struct _E_XWayland_Server E_XWayland_Server;
|
||||||
struct _E_XWayland_Server
|
struct _E_XWayland_Server
|
||||||
{
|
{
|
||||||
int disp;
|
int disp;
|
||||||
int abs_fd, unx_fd;
|
int abs_fd, unx_fd, wm_fd;
|
||||||
char lock[256];
|
char lock[256];
|
||||||
|
|
||||||
|
struct wl_display *wl_disp;
|
||||||
struct wl_event_loop *loop;
|
struct wl_event_loop *loop;
|
||||||
|
struct wl_client *client;
|
||||||
|
|
||||||
Ecore_Fd_Handler *abs_hdlr, *unx_hdlr;
|
Ecore_Fd_Handler *abs_hdlr, *unx_hdlr;
|
||||||
Ecore_Event_Handler *sig_hdlr;
|
Ecore_Event_Handler *sig_hdlr;
|
||||||
|
@ -214,9 +216,11 @@ fail:
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
close(socks[1]);
|
close(socks[1]);
|
||||||
/* TODO: client_create */
|
exs->client = wl_client_create(exs->disp, socks[0]);
|
||||||
|
|
||||||
close(wms[1]);
|
close(wms[1]);
|
||||||
/* TODO */
|
exs->wm_fd = wms[0];
|
||||||
|
|
||||||
/* TODO: remove event sources */
|
/* TODO: remove event sources */
|
||||||
break;
|
break;
|
||||||
case -1:
|
case -1:
|
||||||
|
@ -230,15 +234,16 @@ fail:
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_cb_signal_event(void *data EINA_UNUSED, int type EINA_UNUSED, void *event EINA_UNUSED)
|
_cb_signal_event(void *data EINA_UNUSED, int type EINA_UNUSED, void *event EINA_UNUSED)
|
||||||
{
|
{
|
||||||
/* E_XWayland_Server *exs; */
|
|
||||||
|
|
||||||
/* NB: SIGUSR1 comes from XWayland Server when it has finished
|
/* NB: SIGUSR1 comes from XWayland Server when it has finished
|
||||||
* initialized. */
|
* initialized. */
|
||||||
|
|
||||||
/* if (!(exs = data)) return ECORE_CALLBACK_RENEW; */
|
|
||||||
|
|
||||||
/* TODO: create "window manager" process */
|
/* TODO: create "window manager" process */
|
||||||
|
|
||||||
|
/* TODO: NB:
|
||||||
|
*
|
||||||
|
* Weston creates a smaller window manager process here.
|
||||||
|
* We Maybe able to just do e_comp_x_init, but will have to test that */
|
||||||
|
|
||||||
return ECORE_CALLBACK_RENEW;
|
return ECORE_CALLBACK_RENEW;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -261,6 +266,9 @@ e_modapi_init(E_Module *m)
|
||||||
if (!(exs = calloc(1, sizeof(E_XWayland_Server))))
|
if (!(exs = calloc(1, sizeof(E_XWayland_Server))))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
|
/* record wayland display */
|
||||||
|
exs->wl_disp = comp->wl_comp_data->wl.disp;
|
||||||
|
|
||||||
/* default display to zero */
|
/* default display to zero */
|
||||||
exs->disp = 0;
|
exs->disp = 0;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue