mirror of
https://github.com/hyprwm/Hyprland.git
synced 2025-05-20 10:37:48 +01:00
layerrules: fix abovelock interactivity for touch input (#10253)
This commit is contained in:
parent
2d6ca96e07
commit
cdf5736f1a
2 changed files with 8 additions and 1 deletions
|
@ -270,6 +270,12 @@ void CInputManager::mouseMoveUnified(uint32_t time, bool refocus, bool mouse) {
|
||||||
foundSurface = foundLockSurface;
|
foundSurface = foundLockSurface;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (refocus) {
|
||||||
|
m_foundLSToFocus = pFoundLayerSurface;
|
||||||
|
m_foundWindowToFocus = pFoundWindow;
|
||||||
|
m_foundSurfaceToFocus = foundSurface;
|
||||||
|
}
|
||||||
|
|
||||||
g_pSeatManager->setPointerFocus(foundSurface, surfaceCoords);
|
g_pSeatManager->setPointerFocus(foundSurface, surfaceCoords);
|
||||||
g_pSeatManager->sendPointerMotion(time, surfaceCoords);
|
g_pSeatManager->sendPointerMotion(time, surfaceCoords);
|
||||||
|
|
||||||
|
|
|
@ -61,7 +61,8 @@ void CInputManager::onTouchDown(ITouch::SDownEvent e) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (g_pSessionLockManager->isSessionLocked()) {
|
// could have abovelock surface, thus only use lock if no ls found
|
||||||
|
if (g_pSessionLockManager->isSessionLocked() && m_foundLSToFocus.expired()) {
|
||||||
m_touchData.touchFocusLockSurface = g_pSessionLockManager->getSessionLockSurfaceForMonitor(PMONITOR->m_id);
|
m_touchData.touchFocusLockSurface = g_pSessionLockManager->getSessionLockSurfaceForMonitor(PMONITOR->m_id);
|
||||||
if (!m_touchData.touchFocusLockSurface)
|
if (!m_touchData.touchFocusLockSurface)
|
||||||
Debug::log(WARN, "The session is locked but can't find a lock surface");
|
Debug::log(WARN, "The session is locked but can't find a lock surface");
|
||||||
|
|
Loading…
Reference in a new issue