mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-05-02 02:22:06 -04:00
Compare commits
6 Commits
4c2c193766
...
9139fd2fb1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9139fd2fb1 | ||
|
|
da3df9bb77 | ||
|
|
e7834c981a | ||
|
|
316428b14a | ||
|
|
6a9de8b423 | ||
|
|
f1e3452307 |
@@ -91,6 +91,7 @@ var (
|
||||
wayfireVersionRegex = regexp.MustCompile(`wayfire (\d+\.\d+)`)
|
||||
labwcVersionRegex = regexp.MustCompile(`labwc (\d+\.\d+\.\d+)`)
|
||||
mangowcVersionRegex = regexp.MustCompile(`mango (\d+\.\d+\.\d+)`)
|
||||
miracleVersionRegex = regexp.MustCompile(`miracle-wm v?(\d+\.\d+\.\d+)`)
|
||||
)
|
||||
|
||||
var doctorCmd = &cobra.Command{
|
||||
@@ -469,6 +470,7 @@ func checkWindowManagers() []checkResult {
|
||||
{"Wayfire", "wayfire", "--version", wayfireVersionRegex, []string{"wayfire"}},
|
||||
{"labwc", "labwc", "--version", labwcVersionRegex, []string{"labwc"}},
|
||||
{"mangowc", "mango", "-v", mangowcVersionRegex, []string{"mango"}},
|
||||
{"Miracle WM", "miracle-wm", "--version", miracleVersionRegex, []string{"miracle-wm"}},
|
||||
}
|
||||
|
||||
var results []checkResult
|
||||
@@ -501,7 +503,7 @@ func checkWindowManagers() []checkResult {
|
||||
results = append(results, checkResult{
|
||||
catCompositor, "Compositor", statusError,
|
||||
"No supported Wayland compositor found",
|
||||
"Install Hyprland, niri, Sway, River, or Wayfire",
|
||||
"Install Hyprland, niri, Sway, River, Wayfire, or miracle-wm",
|
||||
doctorDocsURL + "#compositor-checks",
|
||||
})
|
||||
}
|
||||
@@ -551,6 +553,8 @@ func detectRunningWM() string {
|
||||
return "Hyprland"
|
||||
case os.Getenv("NIRI_SOCKET") != "":
|
||||
return "niri"
|
||||
case os.Getenv("MIRACLESOCK") != "":
|
||||
return "Miracle WM"
|
||||
case os.Getenv("XDG_CURRENT_DESKTOP") != "":
|
||||
return os.Getenv("XDG_CURRENT_DESKTOP")
|
||||
}
|
||||
|
||||
@@ -24,7 +24,9 @@ Singleton {
|
||||
}
|
||||
|
||||
function expandTilde(path: string): string {
|
||||
return strip(path.replace("~", stringify(root.home)));
|
||||
if (!path.startsWith("~"))
|
||||
return path;
|
||||
return strip(root.home) + path.substring(1);
|
||||
}
|
||||
|
||||
function shortenHome(path: string): string {
|
||||
|
||||
@@ -211,6 +211,7 @@ Singleton {
|
||||
property int selectedGpuIndex: 0
|
||||
property var enabledGpuPciIds: []
|
||||
property bool showSystemTray: true
|
||||
property bool systemTrayMonochromeIcons: false
|
||||
property bool showClock: true
|
||||
property bool showNotificationButton: true
|
||||
property bool showBattery: true
|
||||
|
||||
@@ -1321,7 +1321,7 @@ Singleton {
|
||||
}
|
||||
|
||||
function loadCustomThemeFromFile(filePath) {
|
||||
customThemeFileView.path = filePath;
|
||||
customThemeFileView.path = Paths.expandTilde(filePath);
|
||||
}
|
||||
|
||||
function reloadCustomThemeVariant() {
|
||||
@@ -1967,6 +1967,7 @@ Singleton {
|
||||
|
||||
FileView {
|
||||
id: customThemeFileView
|
||||
blockLoading: false
|
||||
watchChanges: currentTheme === "custom"
|
||||
|
||||
function parseAndLoadTheme() {
|
||||
|
||||
@@ -79,6 +79,7 @@ var SPEC = {
|
||||
selectedGpuIndex: { def: 0 },
|
||||
enabledGpuPciIds: { def: [] },
|
||||
showSystemTray: { def: true },
|
||||
systemTrayMonochromeIcons: { def: false },
|
||||
showClock: { def: true },
|
||||
showNotificationButton: { def: true },
|
||||
showBattery: { def: true },
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import QtQuick
|
||||
import QtQuick.Effects
|
||||
import Quickshell
|
||||
import Quickshell.Hyprland
|
||||
import Quickshell.Services.SystemTray
|
||||
@@ -366,6 +367,10 @@ BasePill {
|
||||
smooth: true
|
||||
mipmap: true
|
||||
visible: status === Image.Ready
|
||||
layer.enabled: SettingsData.systemTrayMonochromeIcons
|
||||
layer.effect: MultiEffect {
|
||||
saturation: -1
|
||||
}
|
||||
}
|
||||
|
||||
Text {
|
||||
@@ -581,6 +586,10 @@ BasePill {
|
||||
smooth: true
|
||||
mipmap: true
|
||||
visible: status === Image.Ready
|
||||
layer.enabled: SettingsData.systemTrayMonochromeIcons
|
||||
layer.effect: MultiEffect {
|
||||
saturation: -1
|
||||
}
|
||||
}
|
||||
|
||||
Text {
|
||||
@@ -709,6 +718,10 @@ BasePill {
|
||||
smooth: true
|
||||
mipmap: true
|
||||
visible: status === Image.Ready
|
||||
layer.enabled: SettingsData.systemTrayMonochromeIcons
|
||||
layer.effect: MultiEffect {
|
||||
saturation: -1
|
||||
}
|
||||
}
|
||||
|
||||
Text {
|
||||
@@ -1210,6 +1223,10 @@ BasePill {
|
||||
smooth: true
|
||||
mipmap: true
|
||||
visible: status === Image.Ready
|
||||
layer.enabled: SettingsData.systemTrayMonochromeIcons
|
||||
layer.effect: MultiEffect {
|
||||
saturation: -1
|
||||
}
|
||||
}
|
||||
|
||||
Text {
|
||||
|
||||
@@ -714,6 +714,15 @@ Item {
|
||||
})
|
||||
}
|
||||
|
||||
SettingsToggleCard {
|
||||
iconName: "filter_b_and_w"
|
||||
title: I18n.tr("Monochrome System Tray Icons")
|
||||
description: I18n.tr("Desaturate all system tray icons for a uniform monochrome look")
|
||||
visible: selectedBarConfig?.enabled
|
||||
checked: SettingsData.systemTrayMonochromeIcons
|
||||
onToggled: checked => SettingsData.set("systemTrayMonochromeIcons", checked)
|
||||
}
|
||||
|
||||
SettingsToggleCard {
|
||||
iconName: "mouse"
|
||||
title: I18n.tr("Scroll Wheel")
|
||||
|
||||
15
quickshell/Services/LabwcService.qml
Normal file
15
quickshell/Services/LabwcService.qml
Normal file
@@ -0,0 +1,15 @@
|
||||
pragma Singleton
|
||||
pragma ComponentBehavior: Bound
|
||||
|
||||
import QtQuick
|
||||
import Quickshell
|
||||
|
||||
Singleton {
|
||||
id: root
|
||||
|
||||
// Exit the labwc session. Used by SessionService when the user
|
||||
// triggers logout and no custom logout command is configured.
|
||||
function quit() {
|
||||
Quickshell.execDetached(["labwc", "--exit"]);
|
||||
}
|
||||
}
|
||||
@@ -192,7 +192,7 @@ Singleton {
|
||||
|
||||
function attachToSession(name) {
|
||||
if (SettingsData.muxUseCustomCommand && SettingsData.muxCustomCommand) {
|
||||
Quickshell.execDetached([SettingsData.muxCustomCommand, name])
|
||||
Quickshell.execDetached([Paths.expandTilde(SettingsData.muxCustomCommand), name])
|
||||
} else if (root.muxType === "zellij") {
|
||||
Quickshell.execDetached(_terminalPrefix().concat(["zellij", "attach", name]))
|
||||
} else {
|
||||
@@ -202,7 +202,7 @@ Singleton {
|
||||
|
||||
function createSession(name) {
|
||||
if (SettingsData.muxUseCustomCommand && SettingsData.muxCustomCommand) {
|
||||
Quickshell.execDetached([SettingsData.muxCustomCommand, name])
|
||||
Quickshell.execDetached([Paths.expandTilde(SettingsData.muxCustomCommand), name])
|
||||
} else if (root.muxType === "zellij") {
|
||||
Quickshell.execDetached(_terminalPrefix().concat(["zellij", "-s", name]))
|
||||
} else {
|
||||
|
||||
@@ -320,6 +320,11 @@ Singleton {
|
||||
return;
|
||||
}
|
||||
|
||||
if (CompositorService.isLabwc) {
|
||||
LabwcService.quit();
|
||||
return;
|
||||
}
|
||||
|
||||
if (CompositorService.isSway || CompositorService.isScroll || CompositorService.isMiracle) {
|
||||
try {
|
||||
I3.dispatch("exit");
|
||||
|
||||
@@ -5,10 +5,21 @@
|
||||
--toolbar-field-color: {{colors.on_background.default.hex}} !important;
|
||||
--tab-selected-textcolor: {{colors.primary.default.hex}} !important;
|
||||
--toolbar-color: {{colors.on_background.default.hex}} !important;
|
||||
--arrowpanel-color: {{colors.on_surface.default.hex}} !important;
|
||||
--arrowpanel-color: {{colors.on_background.default.hex}} !important;
|
||||
--arrowpanel-background: {{colors.surface_container.default.hex}} !important;
|
||||
--sidebar-text-color: {{colors.on_background.default.hex}} !important;
|
||||
--zen-main-browser-background: {{colors.background.default.hex}} !important;
|
||||
--zen-main-browser-background-toolbar: {{colors.background.default.hex}} !important;
|
||||
}
|
||||
|
||||
#zen-browser-background {
|
||||
--zen-main-browser-background: {{colors.background.default.hex}} !important;
|
||||
--zen-background-opacity: 1 !important;
|
||||
}
|
||||
|
||||
#zen-toolbar-background {
|
||||
--zen-main-browser-background-toolbar: {{colors.background.default.hex}} !important;
|
||||
--zen-background-opacity: 1 !important;
|
||||
}
|
||||
|
||||
.sidebar-placesTree {
|
||||
|
||||
Reference in New Issue
Block a user