diff options
| author | Pppp1116 <pcaiadoguerreiro@gmail.com> | 2026-04-02 22:29:45 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-04-02 22:29:45 +0100 |
| commit | a84e98d2a8e5c40fdad482e8e4b318feb6f5116b (patch) | |
| tree | 41b7091618f601a9fa47a6f4b6f064ded20db07a /src/managers | |
| parent | b2a29e1bf2792099dd0208d23cdf127feefbb89d (diff) | |
seat/compositor: fix minor issues (#13958)
Diffstat (limited to 'src/managers')
| -rw-r--r-- | src/managers/SeatManager.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/managers/SeatManager.cpp b/src/managers/SeatManager.cpp index a107dced..5c48eed5 100644 --- a/src/managers/SeatManager.cpp +++ b/src/managers/SeatManager.cpp @@ -211,10 +211,12 @@ void CSeatManager::sendKeyboardMods(uint32_t depressed, uint32_t latched, uint32 } void CSeatManager::setPointerFocus(SP<CWLSurfaceResource> surf, const Vector2D& local) { + const bool dndActive = PROTO::data && PROTO::data->dndActive(); + if (m_state.pointerFocus == surf) return; - if (PROTO::data->dndActive() && surf) { + if (dndActive && surf) { if (m_state.dndPointerFocus == surf) return; Log::logger->log(Log::DEBUG, "[seatmgr] Refusing pointer focus during an active dnd, but setting dndPointerFocus"); @@ -304,7 +306,7 @@ void CSeatManager::sendPointerMotion(uint32_t timeMs, const Vector2D& local) { } void CSeatManager::sendPointerButton(uint32_t timeMs, uint32_t key, wl_pointer_button_state state_) { - if (!m_state.pointerFocusResource || PROTO::data->dndActive()) + if (!m_state.pointerFocusResource || (PROTO::data && PROTO::data->dndActive())) return; for (auto const& s : m_seatResources) { |
