diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-08-27 13:01:55 +0200 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-08-27 13:01:55 +0200 |
| commit | 5d63152219514ecbe861cb70e9359adc0c5b2878 (patch) | |
| tree | 3ece5ad7e8d006da60fdee6b0f0d817b86c388ee /src/events/Windows.cpp | |
| parent | aaa834d0c3a3b49c82ef2b6c76fb098ea7e30a73 (diff) | |
added a forceinput rule
Diffstat (limited to 'src/events/Windows.cpp')
| -rw-r--r-- | src/events/Windows.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/events/Windows.cpp b/src/events/Windows.cpp index 63028c91..93ad18e5 100644 --- a/src/events/Windows.cpp +++ b/src/events/Windows.cpp @@ -159,6 +159,8 @@ void Events::listener_mapWindow(void* owner, void* data) { requestsFullscreen = true; } else if (r.szRule == "opaque") { PWINDOW->m_sAdditionalConfigData.forceOpaque = true; + } else if (r.szRule == "forceinput") { + PWINDOW->m_sAdditionalConfigData.forceAllowsInput = true; } else if (r.szRule.find("rounding") == 0) { try { PWINDOW->m_sAdditionalConfigData.rounding = std::stoi(r.szRule.substr(r.szRule.find_first_of(' ') + 1)); @@ -271,6 +273,12 @@ void Events::listener_mapWindow(void* owner, void* data) { const auto PFOCUSEDWINDOWPREV = g_pCompositor->m_pLastWindow; + if (PWINDOW->m_sAdditionalConfigData.forceAllowsInput) { + PWINDOW->m_bNoFocus = false; + PWINDOW->m_bNoInitialFocus = false; + PWINDOW->m_bX11ShouldntFocus = false; + } + if (!PWINDOW->m_bNoFocus && !PWINDOW->m_bNoInitialFocus && PWINDOW->m_iX11Type != 2) { g_pCompositor->focusWindow(PWINDOW); PWINDOW->m_fActiveInactiveAlpha.setValueAndWarp(*PACTIVEALPHA); |
