diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-14 12:20:23 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-14 12:20:23 +0200 |
| commit | 55619e7dc830697d2929b0bd5cf1c6dc7435720c (patch) | |
| tree | 88109bc58df7966d9a09800bc9197f877f487134 | |
| parent | 06fcc500d545e2a5c3c4e9d3b24951279f33adf4 (diff) | |
| download | quickshell-55619e7dc830697d2929b0bd5cf1c6dc7435720c.tar.gz quickshell-55619e7dc830697d2929b0bd5cf1c6dc7435720c.zip | |
feat(desktop): the appearance tile
A tile with no page: appearance stays its own process because a wallpaper
picker needs more room than a 600px drawer, so the tile only fires its
existing IPC. This is the case the contract's activate() exists for.
| -rw-r--r-- | desktop/modules/appearance/AppearanceModule.qml | 35 | ||||
| -rw-r--r-- | desktop/shell.qml | 5 |
2 files changed, 39 insertions, 1 deletions
diff --git a/desktop/modules/appearance/AppearanceModule.qml b/desktop/modules/appearance/AppearanceModule.qml new file mode 100644 index 0000000..ca9dc7d --- /dev/null +++ b/desktop/modules/appearance/AppearanceModule.qml @@ -0,0 +1,35 @@ +// Copyright (C) 2026 Danilo M. <danix@danix.xyz> +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License version 2 as +// published by the Free Software Foundation. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +import Quickshell +import Quickshell.Io +import QtQuick +import "../.." + +// Fire and forget. The appearance shell stays a separate process: a wallpaper +// picker needs more room than a 600px drawer, so this tile only opens it. +Module { + id: mod + + name: "appearance" + icon: "" + label: "Appearance" + + function activate() { + proc.running = false; + proc.running = true; + } + + property Process proc: Process { + command: ["qs", "-p", `${Quickshell.env("HOME")}/Programming/GIT/quickshell/appearance`, + "ipc", "call", "appearance", "wallpaper"] + } +} diff --git a/desktop/shell.qml b/desktop/shell.qml index ed219e5..c654cd4 100644 --- a/desktop/shell.qml +++ b/desktop/shell.qml @@ -12,6 +12,7 @@ import Quickshell import Quickshell.Io import Quickshell.Wayland +import "modules/appearance" ShellRoot { // Quickshell exits once no window is visible, and the drawer is closed @@ -28,7 +29,9 @@ ShellRoot { Drawer { id: drawer - modules: [] + modules: [ + AppearanceModule {}, + ] } // The waybar launcher and the deep-link keybinds all reach this: |
