summaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2017-10-06 11:37:50 -0400
committerMike Blumenkrantz <zmike@osg.samsung.com>2017-10-03 12:39:03 -0400
commitb873f9bd45e0a5a5c4a81e701bbb1c16ac35cd4f (patch)
tree221631905791680321ffb53c5fb642376a055220 /src/modules
parent129bb14d2d89604dcf3c2ed10c718b6c5a1cf7dd (diff)
defer wl startup apps until after xwayland init completes
startup apps may require x11 connections, so ensure this is available fix T6122
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/wl_desktop_shell/e_mod_main.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/modules/wl_desktop_shell/e_mod_main.c b/src/modules/wl_desktop_shell/e_mod_main.c
index bc8fe1e..8bbe647 100644
--- a/src/modules/wl_desktop_shell/e_mod_main.c
+++ b/src/modules/wl_desktop_shell/e_mod_main.c
@@ -136,6 +136,22 @@ e_shell_data_new(unsigned int version)
136 return shd; 136 return shd;
137} 137}
138 138
139static Eina_Bool
140desktop_xwayland_startup()
141{
142 e_startup();
143 return ECORE_CALLBACK_RENEW;
144}
145
146static void
147desktop_startup()
148{
149 if (e_module_find("xwayland"))
150 ecore_event_handler_add(E_EVENT_COMPOSITOR_XWAYLAND_INIT, desktop_xwayland_startup, NULL);
151 else
152 e_startup();
153}
154
139E_API E_Module_Api e_modapi = { E_MODULE_API_VERSION, "Wl_Desktop_Shell" }; 155E_API E_Module_Api e_modapi = { E_MODULE_API_VERSION, "Wl_Desktop_Shell" };
140 156
141E_API void * 157E_API void *
@@ -162,7 +178,7 @@ e_modapi_init(E_Module *m)
162 return NULL; 178 return NULL;
163 } 179 }
164#endif 180#endif
165 e_startup(); 181 ecore_job_add(desktop_startup, NULL);
166 182
167 shell_resources = eina_hash_pointer_new(NULL); 183 shell_resources = eina_hash_pointer_new(NULL);
168 xdg_shell_resources = eina_hash_pointer_new(NULL); 184 xdg_shell_resources = eina_hash_pointer_new(NULL);