e_module: Add event handler for ECORE_WL_EVENT_INTERFACES_BOUND 48/38248/1 accepted/tizen/common/20150416.090704 accepted/tizen/mobile/20150416.024404 accepted/tizen/tv/20150416.024151 accepted/tizen/wearable/20150416.024346 submit/tizen/20150415.104259
authorDuna Oh <duna.oh@samsung.com>
Wed, 15 Apr 2015 09:52:45 +0000 (18:52 +0900)
committerDuna Oh <duna.oh@samsung.com>
Wed, 15 Apr 2015 09:54:13 +0000 (18:54 +0900)
commit66a938c620c9101906796bda06d5b53b618ae74d
treeaddad3e3e1faf6a7d903a4b3e4b74980e77bfa75
parent7e36d31132251ed8ca2bbe313d71d1bc51116da9
e_module: Add event handler for ECORE_WL_EVENT_INTERFACES_BOUND

Summary:
- Add event handler to make sure e_module_all_load() done after wayland compositor interfaces are bound
- Delete the "return" code if still loading modules, since "wl_desktop_shell" module create wl-shell and xdg-shell interfaces needed to be bound.

Test Plan:
(1) Run enlightenment on wayland
(2) If e_module attemps to make the "Error loading Module" popup window, you will see deadlock waiting for the wayland sync "done" event to be received. This means the wayland global interfaces including wl.compositor is not ready.

below is the mainloop we are blocked
---------------------------------------------------------------
_ecore_wl_init_wait(void)
{
   while (!_ecore_wl_disp->init_done)
     wl_display_dispatch(_ecore_wl_disp->wl.display);
}

Change-Id: Id1207dfdf40b0fe078ed9700c63d1203fb26ec5e
Signed-off-by: Duna Oh <duna.oh@samsung.com>
src/bin/e_comp_wl.c
src/bin/e_module.c