From 506977c13d118feedffb7b7fc10d5b16e5400f78 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Thu, 9 Jun 2022 19:40:16 +0200 Subject: [PATCH] unfocus on destroy --- src/managers/input/Tablets.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/managers/input/Tablets.cpp b/src/managers/input/Tablets.cpp index 5029ac45..bb2c5c6d 100644 --- a/src/managers/input/Tablets.cpp +++ b/src/managers/input/Tablets.cpp @@ -16,6 +16,8 @@ void CInputManager::newTabletTool(wlr_input_device* pDevice) { PNEWTABLET->hyprListener_Destroy.initCallback(&pDevice->events.destroy, [](void* owner, void* data) { const auto PTAB = (STablet*)owner; + g_pInputManager->unfocusAllTablets(); + g_pInputManager->m_lTablets.remove(*PTAB); Debug::log(LOG, "Removed a tablet"); @@ -133,6 +135,8 @@ STabletTool* CInputManager::ensureTabletToolPresent(wlr_tablet_tool* pTool) { PTOOL->hyprListener_TabletToolDestroy.initCallback(&pTool->events.destroy, [](void* owner, void* data) { const auto PTOOL = (STabletTool*)owner; + g_pInputManager->unfocusAllTablets(); + PTOOL->wlrTabletTool->data = nullptr; g_pInputManager->m_lTabletTools.remove(*PTOOL); }, PTOOL, "Tablet Tool V1"); @@ -192,6 +196,8 @@ void CInputManager::newTabletPad(wlr_input_device* pDevice) { const auto PPAD = (STabletPad*)owner; + g_pInputManager->unfocusAllTablets(); + g_pInputManager->m_lTabletPads.remove(*PPAD); Debug::log(LOG, "Removed a tablet pad");