diff options
| -rw-r--r-- | app.tsx | 7 | ||||
| -rw-r--r-- | src/config/defaults.ts | 2 | ||||
| -rw-r--r-- | src/config/types.ts | 2 | ||||
| -rw-r--r-- | src/modules/launcher/actions.tsx | 5 |
4 files changed, 12 insertions, 4 deletions
@@ -22,8 +22,11 @@ const isLayer = (name: string) => ["base", "mantle", "crust"].includes(name) || name.startsWith("surface") || name.startsWith("overlay"); const applyTransparency = (name: string, hex: string) => { - if (style.transparency.get() === "off" || !isLayer(name)) return hex; - const amount = style.transparency.get() === "high" ? 0.58 : 0.78; + const mode = style.transparency.get(); + if (mode === "off" || !isLayer(name)) return hex; + let amount = 0.78; + if (mode === "low") amount = 0.88; + else if (mode === "high") amount = 0.58; return `color.change(${hex}, $alpha: ${amount})`; }; diff --git a/src/config/defaults.ts b/src/config/defaults.ts index 21ba436..a5ebbbc 100644 --- a/src/config/defaults.ts +++ b/src/config/defaults.ts @@ -2,7 +2,7 @@ import { Astal } from "astal/gtk3"; export default { style: { - transparency: "normal", // One of "off", "normal", "high" + transparency: "normal", // One of "off", "low", "normal", "high" borders: true, vibrant: false, // Extra saturation }, diff --git a/src/config/types.ts b/src/config/types.ts index 5e7415a..c8fb9b4 100644 --- a/src/config/types.ts +++ b/src/config/types.ts @@ -7,7 +7,7 @@ const ARR = (type: string | string[]) => `array of ${typeof type === "string" ? const OBJ_ARR = (shape: object) => ARR(JSON.stringify(shape)); export default { - "style.transparency": ["off", "normal", "high"], + "style.transparency": ["off", "low", "normal", "high"], "style.borders": BOOL, "style.vibrant": BOOL, "config.notifyOnError": BOOL, diff --git a/src/modules/launcher/actions.tsx b/src/modules/launcher/actions.tsx index 04c5458..1caa317 100644 --- a/src/modules/launcher/actions.tsx +++ b/src/modules/launcher/actions.tsx @@ -31,6 +31,11 @@ const transparencyActions = { name: "Off", description: "Completely opaque", }, + low: { + icon: "blur_circular", + name: "Low", + description: "Less transparent", + }, normal: { icon: "blur_linear", name: "Normal", |