diff --git a/.config/quickshell/ii/modules/screenCorners/ScreenCorners.qml b/.config/quickshell/ii/modules/screenCorners/ScreenCorners.qml index 99dab8292..768032383 100644 --- a/.config/quickshell/ii/modules/screenCorners/ScreenCorners.qml +++ b/.config/quickshell/ii/modules/screenCorners/ScreenCorners.qml @@ -13,7 +13,8 @@ Scope { component CornerPanelWindow: PanelWindow { id: cornerPanelWindow - visible: (Config.options.appearance.fakeScreenRounding === 1 || (Config.options.appearance.fakeScreenRounding === 2 && !activeWindow?.fullscreen)) + property bool fullscreen + visible: (Config.options.appearance.fakeScreenRounding === 1 || (Config.options.appearance.fakeScreenRounding === 2 && !fullscreen)) property var corner exclusionMode: ExclusionMode.Ignore @@ -44,22 +45,34 @@ Scope { model: Quickshell.screens Scope { + id: monitorScope required property var modelData + property HyprlandMonitor monitor: Hyprland.monitorFor(modelData) + + // Hide when fullscreen + property list workspacesForMonitor: Hyprland.workspaces.values.filter(workspace=>workspace.monitor && workspace.monitor.name == monitor.name) + property var activeWorkspaceWithFullscreen: workspacesForMonitor.filter(workspace=>((workspace.toplevels.values.filter(window=>window.wayland.fullscreen)[0] != undefined) && workspace.active))[0] + property bool fullscreen: activeWorkspaceWithFullscreen != undefined + CornerPanelWindow { screen: modelData corner: RoundCorner.CornerEnum.TopLeft + fullscreen: monitorScope.fullscreen } CornerPanelWindow { screen: modelData corner: RoundCorner.CornerEnum.TopRight + fullscreen: monitorScope.fullscreen } CornerPanelWindow { screen: modelData corner: RoundCorner.CornerEnum.BottomLeft + fullscreen: monitorScope.fullscreen } CornerPanelWindow { screen: modelData corner: RoundCorner.CornerEnum.BottomRight + fullscreen: monitorScope.fullscreen } } }