mirror of
https://github.com/zoriya/noctalia-shell.git
synced 2026-08-15 18:43:59 +00:00
Add toggle to hide unoccupied workspaces
This commit is contained in:
@@ -33,6 +33,8 @@ Item {
|
||||
}
|
||||
|
||||
readonly property string labelMode: (widgetSettings.labelMode !== undefined) ? widgetSettings.labelMode : widgetMetadata.labelMode
|
||||
readonly property bool hideUnoccupied: (widgetSettings.hideUnoccupied !== undefined) ? widgetSettings.hideUnoccupied : widgetMetadata.hideUnoccupied
|
||||
onHideUnoccupiedChanged: refreshWorkspaces()
|
||||
|
||||
property bool isDestroying: false
|
||||
property bool hovered: false
|
||||
@@ -91,6 +93,9 @@ Item {
|
||||
for (var i = 0; i < WorkspaceService.workspaces.count; i++) {
|
||||
const ws = WorkspaceService.workspaces.get(i)
|
||||
if (ws.output.toLowerCase() === screen.name.toLowerCase()) {
|
||||
if (hideUnoccupied && !ws.isOccupied && !ws.isFocused) {
|
||||
continue
|
||||
}
|
||||
localWorkspaces.append(ws)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,9 +14,10 @@ ColumnLayout {
|
||||
property var widgetMetadata: null
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {})
|
||||
settings.labelMode = labelModeCombo.currentKey
|
||||
return settings
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.labelMode = labelModeCombo.currentKey;
|
||||
settings.hideUnoccupied = hideUnoccupiedToggle.checked;
|
||||
return settings;
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
@@ -41,4 +42,12 @@ ColumnLayout {
|
||||
onSelected: key => labelModeCombo.currentKey = key
|
||||
minimumWidth: 200 * scaling
|
||||
}
|
||||
|
||||
NToggle {
|
||||
id: hideUnoccupiedToggle
|
||||
label: "Hide unoccupied"
|
||||
description: "Don't display workspaces without windows."
|
||||
checked: widgetData.hideUnoccupied
|
||||
onToggled: checked => hideUnoccupiedToggle.checked = checked
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user