Fix dragging cursor being forced on fullscreen windows (#2115)

Fix two edge cases causing the dragging mouse cursor to be forced on
fullscreen windows:
- hovering over a window border and running the fullscreen dispatcher
- moving mouse focus from a monitor with the resize cursor set to a
different monitor with a fullscreen window
This commit is contained in:
outfoxxed 2023-04-21 12:36:55 +00:00 committed by GitHub
parent 510db64860
commit 2df0d034bc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -338,8 +338,12 @@ void CInputManager::mouseMoveUnified(uint32_t time, bool refocus) {
if (pFoundWindow) { if (pFoundWindow) {
// change cursor icon if hovering over border // change cursor icon if hovering over border
if (*PRESIZEONBORDER && *PRESIZECURSORICON && !pFoundWindow->m_bIsFullscreen && !pFoundWindow->hasPopupAt(mouseCoords)) { if (*PRESIZEONBORDER && *PRESIZECURSORICON) {
if (!pFoundWindow->m_bIsFullscreen && !pFoundWindow->hasPopupAt(mouseCoords)) {
setCursorIconOnBorder(pFoundWindow); setCursorIconOnBorder(pFoundWindow);
} else if (m_eBorderIconDirection != BORDERICON_NONE) {
unsetCursorImage();
}
} }
// if we're on an input deco, reset cursor. Don't on overridden // if we're on an input deco, reset cursor. Don't on overridden