실행 중인 애플리케이션에서 애플리케이션을 사용 wayland
하고 실행합니다 . 여기에는 제가 아는 한 현재 기본적으로 실행되지 않는 브라우저인 Firefox 및 Chromium이 포함됩니다. 문제는 메뉴 항목을 클릭해도 아무런 효과가 없다는 것입니다. 예를 들어 Chromium에서 '새 탭'을 클릭하면 새 탭이 열리지 않습니다. 일반적으로 메뉴 항목은 아무런 영향을 미치지 않습니다. 발급해 보려고 합니다xwayland
weston
X11
xserver
wayland/weston
wayland/weston
export GDK_BACKEND=wayland
소용이 없습니다. 이 문제는 내 브라우저 두 개(Firefox와 Chromium)에 영향을 미칩니다. 다른 응용 프로그램에서는 이 동작을 표시하지 않습니다. 누군가 설명을 제공하고 해결책을 제시할 수 있습니까?
여기 하나 있어요웨스턴 스크린캐스트 링크이것은 문제를 보여줍니다.
답변1
문제는 xwayland
와 의 조합 에 있습니다 weston
. 메뉴 표면은 누르기 이벤트를 수신하지만 놓기 이벤트는 관찰 wl_pointer
할 수 없기 때문에 수신하지 않습니다. 입력 포커스를 메뉴로 설정합니다. 오버레이 리디렉션 창입니다. 이 동작은 잘못되었으며 이 오류가 발생합니다. 하지만 이 문제는 다음 패치를 적용하면 쉽게 해결할 수 있습니다 .weston
weston
weston
window.manager.c
xwayland/window-manager.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/xwayland/window-manager.c b/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_redirect)
+ return;
+
client_message.response_type = XCB_CLIENT_MESSAGE;
client_message.format = 32;
client_message.window = window->id;
--
이 내용은 wayland bugs 메일링 리스트에서 논의되고 게시되었습니다.목록.