mirror of
https://github.com/hyprwm/Hyprland.git
synced 2025-07-25 17:21:54 -07:00
layerrules: fix abovelock interactivity for touch input (#10253)
This commit is contained in:
@@ -270,6 +270,12 @@ void CInputManager::mouseMoveUnified(uint32_t time, bool refocus, bool mouse) {
|
||||
foundSurface = foundLockSurface;
|
||||
}
|
||||
|
||||
if (refocus) {
|
||||
m_foundLSToFocus = pFoundLayerSurface;
|
||||
m_foundWindowToFocus = pFoundWindow;
|
||||
m_foundSurfaceToFocus = foundSurface;
|
||||
}
|
||||
|
||||
g_pSeatManager->setPointerFocus(foundSurface, 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);
|
||||
if (!m_touchData.touchFocusLockSurface)
|
||||
Debug::log(WARN, "The session is locked but can't find a lock surface");
|
||||
|
Reference in New Issue
Block a user