This is an automated email from the git hooks/post-receive script.
git pushed a commit to branch wl/tests-module
in repository enlightenment.
View the commit online.
commit 1cb047104bcaf6bfd501a883f9a7194f457446a6
Author: Cedric BAIL <[email protected]>
AuthorDate: Fri Aug 7 23:13:39 2026 -0600
wl_buffer - advertise a wl_output
The buffer backend never called e_comp_wl_output_init(), so it started up
advertising no wl_output at all.
e_comp_wl_output_init() is otherwise only reached from
_e_comp_wl_cb_randr_change(), which needs either e_randr2 or fake xinerama
screens to have produced a screen list. Behind an ecore_evas_buffer there
is neither, and no randr event ever arrives - wl_wl has the same problem
and works around it by calling e_comp_wl_output_init() by hand from its
sync_done handler. wl_x11 gets one via e_comp_x_randr_canvas_new().
A compositor with no wl_output is not much use to a client: every toolkit
enumerates outputs to find scale, DPI and geometry, and simply gets an
empty list. Call it directly, the way wl_wl does.
While here, pass the module's own w/h to e_comp_canvas_init() instead of
repeating the 1024x768 literal that initialised them two lines earlier.
Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01FtoiXoSKUmZb6Aix6U3GZS
---
src/modules/wl_buffer/e_mod_main.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/src/modules/wl_buffer/e_mod_main.c b/src/modules/wl_buffer/e_mod_main.c
index cc31bc47d..dcb5493c1 100644
--- a/src/modules/wl_buffer/e_mod_main.c
+++ b/src/modules/wl_buffer/e_mod_main.c
@@ -21,7 +21,16 @@ e_modapi_init(E_Module *m)
elm_config_accel_preference_override_set(EINA_TRUE);
ecore_evas_data_set(e_comp->ee, "comp", e_comp);
EINA_SAFETY_ON_TRUE_RETURN_VAL(!e_comp_wl_init(), NULL);
- EINA_SAFETY_ON_TRUE_RETURN_VAL(!e_comp_canvas_init(1024, 768), NULL);
+ EINA_SAFETY_ON_TRUE_RETURN_VAL(!e_comp_canvas_init(w, h), NULL);
+
+ /* Nothing else will do this for us. e_comp_wl_output_init() is otherwise
+ * only reached from _e_comp_wl_cb_randr_change(), which needs e_randr2 or
+ * fake xinerama screens -- neither of which exists behind an
+ * ecore_evas_buffer. wl_wl calls it by hand for the same reason.
+ *
+ * Without it the compositor advertises no wl_output at all, and every
+ * toolkit that enumerates outputs (which is most of them) misbehaves. */
+ e_comp_wl_output_init(NULL, NULL, NULL, 0, 0, w, h, 0, 0, 0, 0, 0, 0);
ecore_event_evas_init();
ecore_evas_input_event_register(e_comp->ee);
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.