1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-08-04 04:28:30 -04:00

hyprland: fix named workspaces hiding from widget

fixes #2047
This commit is contained in:
bbedward
2026-07-02 22:48:41 -04:00
parent 6cdb891551
commit 31efe9b385
8 changed files with 365 additions and 194 deletions
+10 -5
View File
@@ -332,7 +332,10 @@ Singleton {
const defaultBorderSize = 2;
const cornerRadius = (typeof SettingsData !== "undefined" && SettingsData.hyprlandLayoutRadiusOverride >= 0) ? SettingsData.hyprlandLayoutRadiusOverride : defaultRadius;
const gaps = (typeof SettingsData !== "undefined" && SettingsData.hyprlandLayoutGapsOverride >= 0) ? SettingsData.hyprlandLayoutGapsOverride : defaultGaps;
const gapsOverride = typeof SettingsData !== "undefined" ? SettingsData.hyprlandLayoutGapsOverride : -1;
const manageGaps = gapsOverride !== -2;
const gapsIn = gapsOverride >= 0 ? gapsOverride : defaultGaps;
const gapsOut = (gapsOverride >= 0 && SettingsData.hyprlandLayoutGapsOutOverride >= 0) ? SettingsData.hyprlandLayoutGapsOutOverride : gapsIn;
const borderSize = (typeof SettingsData !== "undefined" && SettingsData.hyprlandLayoutBorderSize >= 0) ? SettingsData.hyprlandLayoutBorderSize : defaultBorderSize;
const resizeOnBorder = (typeof SettingsData !== "undefined" && SettingsData.hyprlandResizeOnBorder) ? true : false;
const frameEnabled = typeof SettingsData !== "undefined" && SettingsData.frameEnabled;
@@ -341,14 +344,16 @@ Singleton {
// Connected frame mode has no separate bar/frame surface to target
const barFrameTargetNamespace = !frameEnabled ? (SettingsData.standaloneBarXrayAvailable ? "dms:bar" : null) : (frameConnectedMode ? null : "dms:frame");
const generalLines = [];
if (manageGaps)
generalLines.push(`gaps_in = ${gapsIn},`, `gaps_out = ${gapsOut},`);
generalLines.push(`border_size = ${borderSize},`, `resize_on_border = ${resizeOnBorder},`);
let content = `-- Auto-generated by DMS do not edit manually
hl.config({
general = {
gaps_in = ${gaps},
gaps_out = ${gaps},
border_size = ${borderSize},
resize_on_border = ${resizeOnBorder},
${generalLines.map(l => "\t\t" + l).join("\n")}
},
decoration = {
rounding = ${cornerRadius},
+11 -5
View File
@@ -589,16 +589,22 @@ Singleton {
const defaultBorderSize = 2;
const cornerRadius = (typeof SettingsData !== "undefined" && SettingsData.mangoLayoutRadiusOverride >= 0) ? SettingsData.mangoLayoutRadiusOverride : defaultRadius;
const gaps = (typeof SettingsData !== "undefined" && SettingsData.mangoLayoutGapsOverride >= 0) ? SettingsData.mangoLayoutGapsOverride : defaultGaps;
const gapsOverride = typeof SettingsData !== "undefined" ? SettingsData.mangoLayoutGapsOverride : -1;
const manageGaps = gapsOverride !== -2;
const gapsIn = gapsOverride >= 0 ? gapsOverride : defaultGaps;
const gapsOut = (gapsOverride >= 0 && SettingsData.mangoLayoutGapsOutOverride >= 0) ? SettingsData.mangoLayoutGapsOutOverride : gapsIn;
const borderSize = (typeof SettingsData !== "undefined" && SettingsData.mangoLayoutBorderSize >= 0) ? SettingsData.mangoLayoutBorderSize : defaultBorderSize;
let content = `# Auto-generated by DMS - do not edit manually
border_radius=${cornerRadius}
gappih=${gaps}
gappiv=${gaps}
gappoh=${gaps}
gappov=${gaps}
borderpx=${borderSize}
`;
if (manageGaps)
content += `gappih=${gapsIn}
gappiv=${gapsIn}
gappoh=${gapsOut}
gappov=${gapsOut}
`;
Proc.runCommand("mango-write-layout", ["sh", "-c", `mkdir -p "${mangoDmsDir}" && cat > "${layoutPath}" << 'EOF'\n${content}EOF`], (output, exitCode) => {
+9 -10
View File
@@ -1164,7 +1164,9 @@ Singleton {
const defaultBorderSize = 2;
const cornerRadius = (typeof SettingsData !== "undefined" && SettingsData.niriLayoutRadiusOverride >= 0) ? SettingsData.niriLayoutRadiusOverride : defaultRadius;
const gaps = (typeof SettingsData !== "undefined" && SettingsData.niriLayoutGapsOverride >= 0) ? SettingsData.niriLayoutGapsOverride : defaultGaps;
const gapsOverride = typeof SettingsData !== "undefined" ? SettingsData.niriLayoutGapsOverride : -1;
const manageGaps = gapsOverride !== -2;
const gaps = gapsOverride >= 0 ? gapsOverride : defaultGaps;
const borderSize = (typeof SettingsData !== "undefined" && SettingsData.niriLayoutBorderSize >= 0) ? SettingsData.niriLayoutBorderSize : defaultBorderSize;
const frameEnabled = typeof SettingsData !== "undefined" && SettingsData.frameEnabled;
const frameConnectedMode = frameEnabled && SettingsData.frameMode === "connected";
@@ -1206,16 +1208,13 @@ layer-rule {
`;
const layoutLines = [];
if (manageGaps)
layoutLines.push(` gaps ${gaps}`, "");
layoutLines.push(" border {", ` width ${borderSize}`, " }", "", " focus-ring {", ` width ${borderSize}`, " }");
const configContent = dmsWarning + `layout {
gaps ${gaps}
border {
width ${borderSize}
}
focus-ring {
width ${borderSize}
}
${layoutLines.join("\n")}
}
window-rule {