From d9c8a378118d954932eb9906b07150ccd9a3a434 Mon Sep 17 00:00:00 2001 From: Vaxry Date: Sun, 18 May 2025 19:34:14 +0200 Subject: input: always allow focus to permission popups --- src/desktop/Window.cpp | 4 ++++ src/desktop/Window.hpp | 2 ++ 2 files changed, 6 insertions(+) (limited to 'src/desktop') diff --git a/src/desktop/Window.cpp b/src/desktop/Window.cpp index 7ef54da0..9f69e364 100644 --- a/src/desktop/Window.cpp +++ b/src/desktop/Window.cpp @@ -1836,3 +1836,7 @@ PHLWINDOW CWindow::parent() { return m_xdgSurface->m_toplevel->m_parent->m_window.lock(); } + +bool CWindow::priorityFocus() { + return !m_isX11 && CAsyncDialogBox::isPriorityDialogBox(getPID()); +} diff --git a/src/desktop/Window.hpp b/src/desktop/Window.hpp index 47d28db2..0d06b69c 100644 --- a/src/desktop/Window.hpp +++ b/src/desktop/Window.hpp @@ -51,6 +51,7 @@ enum eGetWindowProperties : uint8_t { ALLOW_FLOATING = 1 << 4, USE_PROP_TILED = 1 << 5, SKIP_FULLSCREEN_PRIORITY = 1 << 6, + FOCUS_PRIORITY = 1 << 7, }; enum eSuppressEvents : uint8_t { @@ -408,6 +409,7 @@ class CWindow { std::optional xdgTag(); std::optional xdgDescription(); PHLWINDOW parent(); + bool priorityFocus(); CBox getWindowMainSurfaceBox() const { return {m_realPosition->value().x, m_realPosition->value().y, m_realSize->value().x, m_realSize->value().y}; -- cgit v1.2.3