diff options
| author | vaxerski <vaxry@vaxry.net> | 2023-08-09 22:03:24 +0200 |
|---|---|---|
| committer | vaxerski <vaxry@vaxry.net> | 2023-08-09 22:03:31 +0200 |
| commit | cbb899740cd80dfd29afeb5426c60e6b41a23669 (patch) | |
| tree | c7053a32750448e7d84a7d13a1b874d423c4ac21 /src/helpers | |
| parent | fe9453c6432ccdb3935ff6e9aa32f9d985aff577 (diff) | |
rules: add layer and window xray rules
Diffstat (limited to 'src/helpers')
| -rw-r--r-- | src/helpers/WLClasses.cpp | 6 | ||||
| -rw-r--r-- | src/helpers/WLClasses.hpp | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/helpers/WLClasses.cpp b/src/helpers/WLClasses.cpp index 3a03afcd..c257b6b8 100644 --- a/src/helpers/WLClasses.cpp +++ b/src/helpers/WLClasses.cpp @@ -12,6 +12,7 @@ void SLayerSurface::applyRules() { forceBlur = false; ignoreAlpha = false; ignoreAlphaValue = 0.f; + xray = -1; for (auto& rule : g_pConfigManager->getMatchingRules(this)) { if (rule.rule == "noanim") @@ -29,6 +30,11 @@ void SLayerSurface::applyRules() { if (!alphaValue.empty()) ignoreAlphaValue = std::stof(alphaValue); } catch (...) { Debug::log(ERR, "Invalid value passed to ignoreAlpha"); } + } else if (rule.rule.find("xray") == 0) { + CVarList vars{rule.rule, 0, ' '}; + try { + xray = configStringToInt(vars[1]); + } catch (...) {} } } }
\ No newline at end of file diff --git a/src/helpers/WLClasses.hpp b/src/helpers/WLClasses.hpp index 18e223b6..e43a00ff 100644 --- a/src/helpers/WLClasses.hpp +++ b/src/helpers/WLClasses.hpp @@ -50,6 +50,7 @@ struct SLayerSurface { bool noAnimations = false; bool forceBlur = false; + int xray = -1; bool ignoreAlpha = false; float ignoreAlphaValue = 0.f; @@ -242,7 +243,7 @@ struct STablet { std::string name = ""; bool operator==(const STablet& b) const { - return wlrDevice == b.wlrDevice; + return wlrDevice == b.wlrDevice; } }; |
