From 0807b8b95f595083a19bb5fe317d7242bcb26654 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Tue, 14 Mar 2023 13:51:08 +0000 Subject: tiv1: minor fixes for crashes --- src/managers/input/InputMethodRelay.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/managers/input/InputMethodRelay.cpp') diff --git a/src/managers/input/InputMethodRelay.cpp b/src/managers/input/InputMethodRelay.cpp index f8fa6b09..f84850de 100644 --- a/src/managers/input/InputMethodRelay.cpp +++ b/src/managers/input/InputMethodRelay.cpp @@ -371,7 +371,7 @@ void CInputMethodRelay::createNewTextInput(wlr_text_input_v3* pInput, STextInput return; } - if (!PINPUT->pWlrInput->current_enabled) { + if (!(PINPUT->pWlrInput ? PINPUT->pWlrInput->current_enabled : PINPUT->pV1Input->active)) { Debug::log(WARN, "Disabled TextInput commit?"); return; } @@ -486,6 +486,7 @@ void CInputMethodRelay::onKeyboardFocus(wlr_surface* pSurface) { else { zwp_text_input_v1_send_leave(ti.pV1Input->resourceImpl); ti.pV1Input->focusedSurface = nullptr; + ti.pV1Input->active = false; } } else { continue; @@ -500,6 +501,7 @@ void CInputMethodRelay::onKeyboardFocus(wlr_surface* pSurface) { else { zwp_text_input_v1_send_enter(ti.pV1Input->resourceImpl, pSurface->resource); ti.pV1Input->focusedSurface = pSurface; + ti.pV1Input->active = true; } } else { setPendingSurface(&ti, pSurface); -- cgit v1.2.3