El browser en Xwayland no responde (incluye video)

Uso wayland con xwayland y weston y ejecuto aplicaciones X11 desde un xserver que se ejecuta en wayland/weston . Esto incluye mis browseres, Firefox y Chromium, ya que, en mi opinión, actualmente no pueden ejecutarse de forma nativa en wayland/weston . El problema es que hacer clic en cualquier elemento del menu no tendrá ningún efecto. Por ejemplo, en Chromium no se abrirá una nueva pestaña cuando click Nueva pestaña. En general, ningún elemento del menu tiene ningún tipo de efecto. Intenté emitir

 export GDK_BACKEND=wayland 

en vano. El problema afecta a mis browseres, Firefox y Chromium. Otras aplicaciones no muestran este tipo de comportamiento. ¿Alguien puede dar una explicación y, preferiblemente, una solución?

Aquí hay un enlace a un screencast de Weston que ilustra el problema.

El problema radica en una combinación de xwayland y weston . La superficie del menu recibe un evento de prensa pero no un evento de lanzamiento de wl_pointer ya que wl_pointer no lo observa. weston establecerá el foco de input en el menu. Esta es una window de networkingirección de reemploop. Este comportamiento de weston es incorrecto y causa este error. Pero esto se soluciona fácilmente aplicando el siguiente parche en window.manager.c :

 xwayland/window-manager.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xwayland/window-manager.cb/xwayland/window-manager.c index a216b76..bf39fab 100644 --- a/xwayland/window-manager.c +++ b/xwayland/window-manager.c @@ -701,6 +701,9 @@ weston_wm_window_activate(struct wl_listener *listener, void *data) } if (window) { + if (window->override_networkingirect) + return; + client_message.response_type = XCB_CLIENT_MESSAGE; client_message.format = 32; client_message.window = window->id; -- 

Esto ha sido discutido y publicado en la list de distribución de errores de wayland.