diff options
| author | nippy <you@example.com> | 2026-04-18 13:49:56 +0200 |
|---|---|---|
| committer | nippy <you@example.com> | 2026-04-18 13:49:56 +0200 |
| commit | 5d94c0a7d44a2255b81815a52a7056a94a39842d (patch) | |
| tree | 759bdea9645c6a62f9e1e4c001f7d81cccd120d2 /raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Settings/MuxTab.qml | |
| parent | e79cdf210b267f21a186255ce1a4d50029439d54 (diff) | |
| download | RaveOS-PKGBUILD-5d94c0a7d44a2255b81815a52a7056a94a39842d.tar.gz RaveOS-PKGBUILD-5d94c0a7d44a2255b81815a52a7056a94a39842d.zip | |
update Raveos themes
Diffstat (limited to 'raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Settings/MuxTab.qml')
| -rw-r--r-- | raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Settings/MuxTab.qml | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Settings/MuxTab.qml b/raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Settings/MuxTab.qml new file mode 100644 index 0000000..a82cdbe --- /dev/null +++ b/raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Settings/MuxTab.qml @@ -0,0 +1,112 @@ +import QtQuick +import qs.Common +import qs.Services +import qs.Widgets +import qs.Modules.Settings.Widgets + +Item { + id: root + + readonly property var muxTypeOptions: [ + "tmux", + "zellij" + ] + + DankFlickable { + anchors.fill: parent + clip: true + contentHeight: mainColumn.height + Theme.spacingXL + contentWidth: width + + Column { + id: mainColumn + topPadding: 4 + width: Math.min(550, parent.width - Theme.spacingL * 2) + anchors.horizontalCenter: parent.horizontalCenter + spacing: Theme.spacingXL + + SettingsCard { + tab: "mux" + tags: ["mux", "multiplexer", "tmux", "zellij", "type"] + title: I18n.tr("Multiplexer") + iconName: "terminal" + + SettingsDropdownRow { + tab: "mux" + tags: ["mux", "multiplexer", "tmux", "zellij", "type", "backend"] + settingKey: "muxType" + text: I18n.tr("Multiplexer Type") + description: I18n.tr("Terminal multiplexer backend to use") + options: root.muxTypeOptions + currentValue: SettingsData.muxType + onValueChanged: value => SettingsData.set("muxType", value) + } + } + + SettingsCard { + tab: "mux" + tags: ["mux", "terminal", "custom", "command", "script"] + title: I18n.tr("Terminal") + iconName: "desktop_windows" + + SettingsToggleRow { + tab: "mux" + tags: ["mux", "custom", "command", "override"] + settingKey: "muxUseCustomCommand" + text: I18n.tr("Use Custom Command") + description: I18n.tr("Override terminal with a custom command or script") + checked: SettingsData.muxUseCustomCommand + onToggled: checked => SettingsData.set("muxUseCustomCommand", checked) + } + + Column { + width: parent?.width ?? 0 + spacing: Theme.spacingS + visible: SettingsData.muxUseCustomCommand + + StyledText { + width: parent.width + text: I18n.tr("The custom command used when attaching to sessions (receives the session name as the first argument)") + font.pixelSize: Theme.fontSizeSmall + color: Theme.surfaceVariantText + wrapMode: Text.WordWrap + } + + DankTextField { + width: parent.width + text: SettingsData.muxCustomCommand + placeholderText: I18n.tr("Enter command or script path") + onTextEdited: SettingsData.set("muxCustomCommand", text) + } + } + } + + SettingsCard { + tab: "mux" + tags: ["mux", "session", "filter", "exclude", "hide"] + title: I18n.tr("Session Filter") + iconName: "filter_list" + + Column { + width: parent?.width ?? 0 + spacing: Theme.spacingS + + StyledText { + width: parent.width + text: I18n.tr("Comma-separated list of session names to hide. Wrap in slashes for regex (e.g., /^_.*/).") + font.pixelSize: Theme.fontSizeSmall + color: Theme.surfaceVariantText + wrapMode: Text.WordWrap + } + + DankTextField { + width: parent.width + text: SettingsData.muxSessionFilter + placeholderText: I18n.tr("e.g., scratch, /^tmp_.*/, build") + onTextEdited: SettingsData.set("muxSessionFilter", text) + } + } + } + } + } +} |