summaryrefslogtreecommitdiff
path: root/src/render/shaders
diff options
context:
space:
mode:
authorend-4 <97237370+end-4@users.noreply.github.com>2023-06-12 00:30:31 +0700
committerGitHub <noreply@github.com>2023-06-11 19:30:31 +0200
commite1edfde539557d175f8c48d94996469426da7c47 (patch)
treeb14dd7f02cb6c06a26ec1a72c5cb34b353dc15c6 /src/render/shaders
parent10fd75c8335736b1a0dcb3830a5b8c2367a02e61 (diff)
Allow setting alpha value for ignorezero layer rule (#2477)
* rename ignorezero to ignorealpha * allow setting ignorealpha value This commit allows setting a float value (0-1) for the ignorealpha layer rule. Does not yet have error handling; invalid ignorealpha layer rule will crash Hyprland. * add brackets i forgot to add * prevent crash with invalid ignorealpha value prevents hyprland from immediately crashing with invalid ignorealpha layer rule does not log * don't try to set ignoreAlphaValue if alpha value not specified * add catch to try, reintroduce ignorezero - added catch after try cuz i was an idiot - re-add ignorezero as an alternative to ignorealpha to not introduce a breaking change * add logging for failed ignorealpha layer rule * fix get ignorealpha's get VALUE * check npos and use empty() * rename VALUE cuz no longer const * format Shader.hpp
Diffstat (limited to 'src/render/shaders')
-rw-r--r--src/render/shaders/Textures.hpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/render/shaders/Textures.hpp b/src/render/shaders/Textures.hpp
index 45068839..e571d662 100644
--- a/src/render/shaders/Textures.hpp
+++ b/src/render/shaders/Textures.hpp
@@ -96,7 +96,8 @@ uniform vec2 fullSize;
uniform float radius;
uniform int discardOpaque;
-uniform int discardAlphaZero;
+uniform int discardAlpha;
+uniform float discardAlphaValue;
uniform int applyTint;
uniform vec3 tint;
@@ -110,7 +111,7 @@ void main() {
if (discardOpaque == 1 && pixColor[3] * alpha == 1.0)
discard;
- if (discardAlphaZero == 1 && pixColor[3] == 0.0)
+ if (discardAlpha == 1 && pixColor[3] <= discardAlphaValue)
discard;
if (applyTint == 1) {
@@ -145,7 +146,8 @@ uniform vec2 fullSize;
uniform float radius;
uniform int discardOpaque;
-uniform int discardAlphaZero;
+uniform int discardAlpha;
+uniform int discardAlphaValue;
uniform int applyTint;
uniform vec3 tint;
@@ -232,7 +234,8 @@ uniform vec2 fullSize;
uniform float radius;
uniform int discardOpaque;
-uniform int discardAlphaZero;
+uniform int discardAlpha;
+uniform int discardAlphaValue;
uniform int applyTint;
uniform vec3 tint;