1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2025-12-09 15:05:39 -05:00

replace qmlformat with a better tool

still not perfect, but well - what can ya do
This commit is contained in:
bbedward
2025-08-08 15:55:37 -04:00
parent 8dc6e2805d
commit 4d408c65f2
137 changed files with 30315 additions and 29625 deletions

View File

@@ -1,200 +1,211 @@
pragma Singleton
pragma ComponentBehavior: Bound
pragma ComponentBehavior
import QtQuick
import Quickshell
import Quickshell.Io
Singleton {
id: root
property bool brightnessAvailable: laptopBacklightAvailable || ddcAvailable
property bool laptopBacklightAvailable: false
property bool ddcAvailable: false
property int brightnessLevel: 50
property int maxBrightness: 100
property int currentRawBrightness: 0
property bool brightnessInitialized: false
signal brightnessChanged()
function setBrightnessInternal(percentage) {
brightnessLevel = Math.max(1, Math.min(100, percentage));
if (laptopBacklightAvailable) {
laptopBrightnessProcess.command = ["brightnessctl", "set", brightnessLevel + "%"];
laptopBrightnessProcess.running = true;
} else if (ddcAvailable) {
Quickshell.execDetached(["ddcutil", "setvcp", "10", brightnessLevel.toString()]);
}
}
function setBrightness(percentage) {
setBrightnessInternal(percentage);
brightnessChanged();
}
Component.onCompleted: {
ddcAvailabilityChecker.running = true;
laptopBacklightChecker.running = true;
}
onLaptopBacklightAvailableChanged: {
if (laptopBacklightAvailable && !brightnessInitialized) {
laptopBrightnessInitProcess.running = true;
}
}
onDdcAvailableChanged: {
if (ddcAvailable && !laptopBacklightAvailable && !brightnessInitialized) {
ddcBrightnessInitProcess.running = true;
}
}
Process {
id: ddcAvailabilityChecker
command: ["which", "ddcutil"]
onExited: function(exitCode) {
ddcAvailable = (exitCode === 0);
}
}
Process {
id: laptopBacklightChecker
command: ["brightnessctl", "--list"]
onExited: function(exitCode) {
laptopBacklightAvailable = (exitCode === 0);
}
}
Process {
id: laptopBrightnessProcess
running: false
onExited: function(exitCode) {
if (exitCode !== 0) {
}
}
}
Process {
id: laptopBrightnessInitProcess
command: ["brightnessctl", "get"]
running: false
stdout: StdioCollector {
onStreamFinished: {
if (text.trim()) {
currentRawBrightness = parseInt(text.trim());
laptopMaxBrightnessProcess.running = true;
}
}
}
onExited: function(exitCode) {
if (exitCode !== 0) {
console.warn("BrightnessService: Failed to read current brightness:", exitCode);
}
}
}
Process {
id: laptopMaxBrightnessProcess
command: ["brightnessctl", "max"]
running: false
stdout: StdioCollector {
onStreamFinished: {
if (text.trim()) {
maxBrightness = parseInt(text.trim());
brightnessLevel = Math.round((currentRawBrightness / maxBrightness) * 100);
brightnessInitialized = true;
console.log("BrightnessService: Initialized with brightness level:", brightnessLevel + "%");
}
}
}
onExited: function(exitCode) {
if (exitCode !== 0) {
console.warn("BrightnessService: Failed to read max brightness:", exitCode);
}
}
}
Process {
id: ddcBrightnessInitProcess
command: ["ddcutil", "getvcp", "10", "--brief"]
running: false
stdout: StdioCollector {
onStreamFinished: {
if (text.trim()) {
const parts = text.trim().split(" ");
if (parts.length >= 5) {
const current = parseInt(parts[3]) || 50;
const max = parseInt(parts[4]) || 100;
brightnessLevel = Math.round((current / max) * 100);
brightnessInitialized = true;
}
}
}
}
onExited: function(exitCode) {
if (exitCode !== 0) {
if (!laptopBacklightAvailable) {
console.warn("BrightnessService: DDC brightness read failed:", exitCode);
}
}
}
}
// IPC Handler for external control
IpcHandler {
target: "brightness"
id: root
function set(percentage: string): string {
if (!root.brightnessAvailable) {
return "Brightness control not available";
}
const value = parseInt(percentage);
const clampedValue = Math.max(1, Math.min(100, value));
root.setBrightness(clampedValue);
return "Brightness set to " + clampedValue + "%";
}
property bool brightnessAvailable: laptopBacklightAvailable || ddcAvailable
property bool laptopBacklightAvailable: false
property bool ddcAvailable: false
property int brightnessLevel: 50
property int maxBrightness: 100
property int currentRawBrightness: 0
property bool brightnessInitialized: false
function increment(step: string): string {
if (!root.brightnessAvailable) {
return "Brightness control not available";
}
const currentLevel = root.brightnessLevel;
const newLevel = Math.max(1, Math.min(100, currentLevel + parseInt(step || "10")));
root.setBrightness(newLevel);
return "Brightness increased to " + newLevel + "%";
}
signal brightnessChanged
function decrement(step: string): string {
if (!root.brightnessAvailable) {
return "Brightness control not available";
}
const currentLevel = root.brightnessLevel;
const newLevel = Math.max(1, Math.min(100, currentLevel - parseInt(step || "10")));
root.setBrightness(newLevel);
return "Brightness decreased to " + newLevel + "%";
}
function setBrightnessInternal(percentage) {
brightnessLevel = Math.max(1, Math.min(100, percentage))
function status(): string {
if (!root.brightnessAvailable) {
return "Brightness control not available";
}
return "Brightness: " + root.brightnessLevel + "% (" +
(root.laptopBacklightAvailable ? "laptop backlight" : "DDC") + ")";
}
if (laptopBacklightAvailable) {
laptopBrightnessProcess.command = ["brightnessctl", "set", brightnessLevel + "%"]
laptopBrightnessProcess.running = true
} else if (ddcAvailable) {
Quickshell.execDetached(
["ddcutil", "setvcp", "10", brightnessLevel.toString()])
}
}
}
function setBrightness(percentage) {
setBrightnessInternal(percentage)
brightnessChanged()
}
Component.onCompleted: {
ddcAvailabilityChecker.running = true
laptopBacklightChecker.running = true
}
onLaptopBacklightAvailableChanged: {
if (laptopBacklightAvailable && !brightnessInitialized) {
laptopBrightnessInitProcess.running = true
}
}
onDdcAvailableChanged: {
if (ddcAvailable && !laptopBacklightAvailable && !brightnessInitialized) {
ddcBrightnessInitProcess.running = true
}
}
Process {
id: ddcAvailabilityChecker
command: ["which", "ddcutil"]
onExited: function (exitCode) {
ddcAvailable = (exitCode === 0)
}
}
Process {
id: laptopBacklightChecker
command: ["brightnessctl", "--list"]
onExited: function (exitCode) {
laptopBacklightAvailable = (exitCode === 0)
}
}
Process {
id: laptopBrightnessProcess
running: false
onExited: function (exitCode) {
if (exitCode !== 0) {
}
}
}
Process {
id: laptopBrightnessInitProcess
command: ["brightnessctl", "get"]
running: false
stdout: StdioCollector {
onStreamFinished: {
if (text.trim()) {
currentRawBrightness = parseInt(text.trim())
laptopMaxBrightnessProcess.running = true
}
}
}
onExited: function (exitCode) {
if (exitCode !== 0) {
console.warn("BrightnessService: Failed to read current brightness:",
exitCode)
}
}
}
Process {
id: laptopMaxBrightnessProcess
command: ["brightnessctl", "max"]
running: false
stdout: StdioCollector {
onStreamFinished: {
if (text.trim()) {
maxBrightness = parseInt(text.trim())
brightnessLevel = Math.round(
(currentRawBrightness / maxBrightness) * 100)
brightnessInitialized = true
console.log("BrightnessService: Initialized with brightness level:",
brightnessLevel + "%")
}
}
}
onExited: function (exitCode) {
if (exitCode !== 0) {
console.warn("BrightnessService: Failed to read max brightness:",
exitCode)
}
}
}
Process {
id: ddcBrightnessInitProcess
command: ["ddcutil", "getvcp", "10", "--brief"]
running: false
stdout: StdioCollector {
onStreamFinished: {
if (text.trim()) {
const parts = text.trim().split(" ")
if (parts.length >= 5) {
const current = parseInt(parts[3]) || 50
const max = parseInt(parts[4]) || 100
brightnessLevel = Math.round((current / max) * 100)
brightnessInitialized = true
}
}
}
}
onExited: function (exitCode) {
if (exitCode !== 0) {
if (!laptopBacklightAvailable) {
console.warn("BrightnessService: DDC brightness read failed:",
exitCode)
}
}
}
}
// IPC Handler for external control
IpcHandler {
target: "brightness"
function set(percentage: string): string {
if (!root.brightnessAvailable) {
return "Brightness control not available"
}
const value = parseInt(percentage)
const clampedValue = Math.max(1, Math.min(100, value))
root.setBrightness(clampedValue)
return "Brightness set to " + clampedValue + "%"
}
function increment(step: string): string {
if (!root.brightnessAvailable) {
return "Brightness control not available"
}
const currentLevel = root.brightnessLevel
const newLevel = Math.max(1,
Math.min(100,
currentLevel + parseInt(step || "10")))
root.setBrightness(newLevel)
return "Brightness increased to " + newLevel + "%"
}
function decrement(step: string): string {
if (!root.brightnessAvailable) {
return "Brightness control not available"
}
const currentLevel = root.brightnessLevel
const newLevel = Math.max(1,
Math.min(100,
currentLevel - parseInt(step || "10")))
root.setBrightness(newLevel)
return "Brightness decreased to " + newLevel + "%"
}
function status(): string {
if (!root.brightnessAvailable) {
return "Brightness control not available"
}
return "Brightness: " + root.brightnessLevel + "% ("
+ (root.laptopBacklightAvailable ? "laptop backlight" : "DDC") + ")"
}
}
}