summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>2025-09-23 18:10:32 +1000
committer2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>2025-09-23 18:10:32 +1000
commit21e1efd944f39c53c649348559550e18f6a9803b (patch)
tree1bc762bc2e4dd19cae41ae0bae696ed6cf1fa528
parentaudio: audio device changed toasts (#684) (diff)
downloadcaelestia-shell-21e1efd944f39c53c649348559550e18f6a9803b.tar.gz
caelestia-shell-21e1efd944f39c53c649348559550e18f6a9803b.tar.bz2
caelestia-shell-21e1efd944f39c53c649348559550e18f6a9803b.zip
config: enable/disable specific toasts
-rw-r--r--README.md6
-rw-r--r--config/Config.qml3
-rw-r--r--config/UtilitiesConfig.qml4
-rw-r--r--modules/BatteryMonitor.qml6
-rw-r--r--services/GameMode.qml7
-rw-r--r--services/Notifs.qml3
6 files changed, 23 insertions, 6 deletions
diff --git a/README.md b/README.md
index f72ecdc..f932c8a 100644
--- a/README.md
+++ b/README.md
@@ -569,8 +569,12 @@ default, you must create it manually.
"enabled": true,
"maxToasts": 4,
"toasts": {
+ "audioInputChanged": true,
"audioOutputChanged": true,
- "audioInputChanged": true
+ "chargingChanged": true,
+ "configLoaded": true,
+ "dndChanged": true,
+ "gameModeChanged": true
}
}
}
diff --git a/config/Config.qml b/config/Config.qml
index 8d54cf8..267a184 100644
--- a/config/Config.qml
+++ b/config/Config.qml
@@ -40,7 +40,8 @@ Singleton {
onLoaded: {
try {
JSON.parse(text());
- Toaster.toast(qsTr("Config loaded"), qsTr("Config loaded in %1ms").arg(timer.elapsedMs()), "rule_settings");
+ if (adapter.utilities.toasts.configLoaded)
+ Toaster.toast(qsTr("Config loaded"), qsTr("Config loaded in %1ms").arg(timer.elapsedMs()), "rule_settings");
} catch (e) {
Toaster.toast(qsTr("Failed to load config"), e.message, "settings_alert", Toast.Error);
}
diff --git a/config/UtilitiesConfig.qml b/config/UtilitiesConfig.qml
index c1bad2a..0d70d50 100644
--- a/config/UtilitiesConfig.qml
+++ b/config/UtilitiesConfig.qml
@@ -12,6 +12,10 @@ JsonObject {
}
component Toasts: JsonObject {
+ property bool configLoaded: true
+ property bool chargingChanged: true
+ property bool gameModeChanged: true
+ property bool dndChanged: true
property bool audioOutputChanged: true
property bool audioInputChanged: true
}
diff --git a/modules/BatteryMonitor.qml b/modules/BatteryMonitor.qml
index bd51c85..7a3be12 100644
--- a/modules/BatteryMonitor.qml
+++ b/modules/BatteryMonitor.qml
@@ -14,9 +14,11 @@ Scope {
function onOnBatteryChanged(): void {
if (UPower.onBattery) {
- Toaster.toast(qsTr("Charger unplugged"), qsTr("Battery is now on AC"), "power_off");
+ if (Config.utilities.toasts.chargingChanged)
+ Toaster.toast(qsTr("Charger unplugged"), qsTr("Battery is now on AC"), "power_off");
} else {
- Toaster.toast(qsTr("Charger plugged in"), qsTr("Battery is charging"), "power");
+ if (Config.utilities.toasts.chargingChanged)
+ Toaster.toast(qsTr("Charger plugged in"), qsTr("Battery is charging"), "power");
for (const level of root.warnLevels)
level.warned = false;
}
diff --git a/services/GameMode.qml b/services/GameMode.qml
index 3881d74..6771d59 100644
--- a/services/GameMode.qml
+++ b/services/GameMode.qml
@@ -1,5 +1,6 @@
pragma Singleton
+import qs.config
import Caelestia
import Quickshell
import Quickshell.Io
@@ -17,10 +18,12 @@ Singleton {
onEnabledChanged: {
if (enabled) {
setDynamicConfs();
- Toaster.toast(qsTr("Game mode enabled"), qsTr("Disabled Hyprland animations, blur, gaps and shadows"), "gamepad");
+ if (Config.utilities.toasts.gameModeChanged)
+ Toaster.toast(qsTr("Game mode enabled"), qsTr("Disabled Hyprland animations, blur, gaps and shadows"), "gamepad");
} else {
Quickshell.execDetached(["hyprctl", "reload"]);
- Toaster.toast(qsTr("Game mode disabled"), qsTr("Hyprland settings restored"), "gamepad");
+ if (Config.utilities.toasts.gameModeChanged)
+ Toaster.toast(qsTr("Game mode disabled"), qsTr("Hyprland settings restored"), "gamepad");
}
}
diff --git a/services/Notifs.qml b/services/Notifs.qml
index 2deba75..0012d4b 100644
--- a/services/Notifs.qml
+++ b/services/Notifs.qml
@@ -21,6 +21,9 @@ Singleton {
property bool loaded
onDndChanged: {
+ if (!Config.utilities.toasts.dndChanged)
+ return;
+
if (dnd)
Toaster.toast(qsTr("Do not disturb enabled"), qsTr("Popup notifications are now disabled"), "do_not_disturb_on");
else