mirror of
https://github.com/zoriya/noctalia-shell.git
synced 2026-06-03 19:01:50 +00:00
Merge pull request #257 from mkuritsu/main
Add toggle to hide unoccupied workspaces
This commit is contained in:
@@ -0,0 +1 @@
|
||||
.qmlls.ini
|
||||
@@ -0,0 +1,2 @@
|
||||
[General]
|
||||
IndentWidth=2
|
||||
@@ -32,6 +32,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
|
||||
@@ -90,6 +92,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)
|
||||
}
|
||||
}
|
||||
@@ -196,8 +201,6 @@ Item {
|
||||
return Color.mOnError
|
||||
if (model.isActive || model.isOccupied)
|
||||
return Color.mOnSecondary
|
||||
if (model.isUrgent)
|
||||
return Color.mOnError
|
||||
|
||||
return Color.mOnSurface
|
||||
}
|
||||
@@ -213,8 +216,6 @@ Item {
|
||||
return Color.mError
|
||||
if (model.isActive || model.isOccupied)
|
||||
return Color.mSecondary
|
||||
if (model.isUrgent)
|
||||
return Color.mError
|
||||
|
||||
return Color.mOutline
|
||||
}
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,7 +87,8 @@ Singleton {
|
||||
},
|
||||
"Workspace": {
|
||||
"allowUserSettings": true,
|
||||
"labelMode": "index"
|
||||
"labelMode": "index",
|
||||
"hideUnoccupied": false
|
||||
},
|
||||
"MediaMini": {
|
||||
"allowUserSettings": true,
|
||||
|
||||
Reference in New Issue
Block a user