From 021f0026da654dd202df6df20eb0335b35192ca2 Mon Sep 17 00:00:00 2001 From: Lemmy Date: Wed, 25 Mar 2026 19:12:30 -0400 Subject: [PATCH] fix(bar): guard bar widget metadata lookup --- Modules/Bar/Widgets/AudioVisualizer.qml | 2 +- Modules/Bar/Widgets/Battery.qml | 2 +- Modules/Bar/Widgets/Bluetooth.qml | 2 +- Modules/Bar/Widgets/Brightness.qml | 2 +- Modules/Bar/Widgets/Clock.qml | 2 +- Modules/Bar/Widgets/ControlCenter.qml | 2 +- Modules/Bar/Widgets/CustomButton.qml | 2 +- Modules/Bar/Widgets/DarkMode.qml | 2 +- Modules/Bar/Widgets/KeepAwake.qml | 2 +- Modules/Bar/Widgets/KeyboardLayout.qml | 2 +- Modules/Bar/Widgets/Launcher.qml | 2 +- Modules/Bar/Widgets/LockKeys.qml | 2 +- Modules/Bar/Widgets/MediaMini.qml | 2 +- Modules/Bar/Widgets/Microphone.qml | 2 +- Modules/Bar/Widgets/Network.qml | 2 +- Modules/Bar/Widgets/NightLight.qml | 2 +- Modules/Bar/Widgets/NoctaliaPerformance.qml | 2 +- Modules/Bar/Widgets/NotificationHistory.qml | 2 +- Modules/Bar/Widgets/PowerProfile.qml | 2 +- Modules/Bar/Widgets/SessionMenu.qml | 2 +- Modules/Bar/Widgets/Settings.qml | 2 +- Modules/Bar/Widgets/Spacer.qml | 2 +- Modules/Bar/Widgets/SystemMonitor.qml | 2 +- Modules/Bar/Widgets/Taskbar.qml | 2 +- Modules/Bar/Widgets/Tray.qml | 2 +- Modules/Bar/Widgets/VPN.qml | 2 +- Modules/Bar/Widgets/Volume.qml | 2 +- Modules/Bar/Widgets/WallpaperSelector.qml | 2 +- Modules/Bar/Widgets/Workspace.qml | 2 +- 29 files changed, 29 insertions(+), 29 deletions(-) diff --git a/Modules/Bar/Widgets/AudioVisualizer.qml b/Modules/Bar/Widgets/AudioVisualizer.qml index 69b5a3ea7..8080f6dc4 100644 --- a/Modules/Bar/Widgets/AudioVisualizer.qml +++ b/Modules/Bar/Widgets/AudioVisualizer.qml @@ -25,7 +25,7 @@ Item { readonly property bool isVerticalBar: barPosition === "left" || barPosition === "right" readonly property real capsuleHeight: Style.getCapsuleHeightForScreen(screenName) - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} property var widgetSettings: { if (section && sectionWidgetIndex >= 0 && screenName) { var widgets = Settings.getBarWidgetsForScreen(screenName)[section]; diff --git a/Modules/Bar/Widgets/Battery.qml b/Modules/Bar/Widgets/Battery.qml index 865de3e57..9e87cf8ee 100644 --- a/Modules/Bar/Widgets/Battery.qml +++ b/Modules/Bar/Widgets/Battery.qml @@ -21,7 +21,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/Bluetooth.qml b/Modules/Bar/Widgets/Bluetooth.qml index bb59c595b..cd6146fb9 100644 --- a/Modules/Bar/Widgets/Bluetooth.qml +++ b/Modules/Bar/Widgets/Bluetooth.qml @@ -19,7 +19,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/Brightness.qml b/Modules/Bar/Widgets/Brightness.qml index 541317583..b82e0b4f7 100644 --- a/Modules/Bar/Widgets/Brightness.qml +++ b/Modules/Bar/Widgets/Brightness.qml @@ -19,7 +19,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/Clock.qml b/Modules/Bar/Widgets/Clock.qml index d74bc80f7..7dbafa6dd 100644 --- a/Modules/Bar/Widgets/Clock.qml +++ b/Modules/Bar/Widgets/Clock.qml @@ -18,7 +18,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/ControlCenter.qml b/Modules/Bar/Widgets/ControlCenter.qml index 31e660a61..0621bcf24 100644 --- a/Modules/Bar/Widgets/ControlCenter.qml +++ b/Modules/Bar/Widgets/ControlCenter.qml @@ -21,7 +21,7 @@ NIconButton { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/CustomButton.qml b/Modules/Bar/Widgets/CustomButton.qml index c3c8bfba1..ed5796c70 100644 --- a/Modules/Bar/Widgets/CustomButton.qml +++ b/Modules/Bar/Widgets/CustomButton.qml @@ -20,7 +20,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/DarkMode.qml b/Modules/Bar/Widgets/DarkMode.qml index fe854f138..11f8015eb 100644 --- a/Modules/Bar/Widgets/DarkMode.qml +++ b/Modules/Bar/Widgets/DarkMode.qml @@ -14,7 +14,7 @@ NIconButton { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { if (section && sectionWidgetIndex >= 0 && screenName) { diff --git a/Modules/Bar/Widgets/KeepAwake.qml b/Modules/Bar/Widgets/KeepAwake.qml index 834395fa0..03fe09eb4 100644 --- a/Modules/Bar/Widgets/KeepAwake.qml +++ b/Modules/Bar/Widgets/KeepAwake.qml @@ -18,7 +18,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/KeyboardLayout.qml b/Modules/Bar/Widgets/KeyboardLayout.qml index 70e0e9ad2..b9b0b485d 100644 --- a/Modules/Bar/Widgets/KeyboardLayout.qml +++ b/Modules/Bar/Widgets/KeyboardLayout.qml @@ -22,7 +22,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/Launcher.qml b/Modules/Bar/Widgets/Launcher.qml index 93d7cb96e..b12fb9839 100644 --- a/Modules/Bar/Widgets/Launcher.qml +++ b/Modules/Bar/Widgets/Launcher.qml @@ -18,7 +18,7 @@ NIconButton { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/LockKeys.qml b/Modules/Bar/Widgets/LockKeys.qml index 8447201f4..f903a4bdd 100644 --- a/Modules/Bar/Widgets/LockKeys.qml +++ b/Modules/Bar/Widgets/LockKeys.qml @@ -21,7 +21,7 @@ Item { property int sectionWidgetsCount: 0 // Settings - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/MediaMini.qml b/Modules/Bar/Widgets/MediaMini.qml index e35d591c9..0afb5831a 100644 --- a/Modules/Bar/Widgets/MediaMini.qml +++ b/Modules/Bar/Widgets/MediaMini.qml @@ -19,7 +19,7 @@ Item { property int sectionWidgetsCount: 0 // Settings - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/Microphone.qml b/Modules/Bar/Widgets/Microphone.qml index 7a8b60619..dab422d1b 100644 --- a/Modules/Bar/Widgets/Microphone.qml +++ b/Modules/Bar/Widgets/Microphone.qml @@ -21,7 +21,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/Network.qml b/Modules/Bar/Widgets/Network.qml index 3435b323c..8a61ff8e1 100644 --- a/Modules/Bar/Widgets/Network.qml +++ b/Modules/Bar/Widgets/Network.qml @@ -19,7 +19,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/NightLight.qml b/Modules/Bar/Widgets/NightLight.qml index 6d58de466..8c5fe5b54 100644 --- a/Modules/Bar/Widgets/NightLight.qml +++ b/Modules/Bar/Widgets/NightLight.qml @@ -20,7 +20,7 @@ NIconButton { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { if (section && sectionWidgetIndex >= 0 && screenName) { diff --git a/Modules/Bar/Widgets/NoctaliaPerformance.qml b/Modules/Bar/Widgets/NoctaliaPerformance.qml index fcfceb3d4..ef70b3f71 100644 --- a/Modules/Bar/Widgets/NoctaliaPerformance.qml +++ b/Modules/Bar/Widgets/NoctaliaPerformance.qml @@ -20,7 +20,7 @@ NIconButton { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { if (section && sectionWidgetIndex >= 0 && screenName) { diff --git a/Modules/Bar/Widgets/NotificationHistory.qml b/Modules/Bar/Widgets/NotificationHistory.qml index c7b82e7e2..13596e509 100644 --- a/Modules/Bar/Widgets/NotificationHistory.qml +++ b/Modules/Bar/Widgets/NotificationHistory.qml @@ -20,7 +20,7 @@ NIconButton { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/PowerProfile.qml b/Modules/Bar/Widgets/PowerProfile.qml index c1b12bc46..9ec974253 100644 --- a/Modules/Bar/Widgets/PowerProfile.qml +++ b/Modules/Bar/Widgets/PowerProfile.qml @@ -18,7 +18,7 @@ NIconButton { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { if (section && sectionWidgetIndex >= 0 && screenName) { diff --git a/Modules/Bar/Widgets/SessionMenu.qml b/Modules/Bar/Widgets/SessionMenu.qml index 92359ec7e..ba862bc01 100644 --- a/Modules/Bar/Widgets/SessionMenu.qml +++ b/Modules/Bar/Widgets/SessionMenu.qml @@ -18,7 +18,7 @@ NIconButton { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/Settings.qml b/Modules/Bar/Widgets/Settings.qml index 733bd06ac..a7cecbf11 100644 --- a/Modules/Bar/Widgets/Settings.qml +++ b/Modules/Bar/Widgets/Settings.qml @@ -16,7 +16,7 @@ NIconButton { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/Spacer.qml b/Modules/Bar/Widgets/Spacer.qml index 15858156d..7fe6c1684 100644 --- a/Modules/Bar/Widgets/Spacer.qml +++ b/Modules/Bar/Widgets/Spacer.qml @@ -16,7 +16,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/SystemMonitor.qml b/Modules/Bar/Widgets/SystemMonitor.qml index 732e415ce..7bdfa63e1 100644 --- a/Modules/Bar/Widgets/SystemMonitor.qml +++ b/Modules/Bar/Widgets/SystemMonitor.qml @@ -21,7 +21,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/Taskbar.qml b/Modules/Bar/Widgets/Taskbar.qml index 04b2122c2..339727ef1 100644 --- a/Modules/Bar/Widgets/Taskbar.qml +++ b/Modules/Bar/Widgets/Taskbar.qml @@ -29,7 +29,7 @@ Item { readonly property real capsuleHeight: Style.getCapsuleHeightForScreen(screenName) readonly property real barFontSize: Style.getBarFontSizeForScreen(screenName) - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} property var widgetSettings: { if (section && sectionWidgetIndex >= 0 && screenName) { var widgets = Settings.getBarWidgetsForScreen(screenName)[section]; diff --git a/Modules/Bar/Widgets/Tray.qml b/Modules/Bar/Widgets/Tray.qml index d0126472c..ef33111db 100644 --- a/Modules/Bar/Widgets/Tray.qml +++ b/Modules/Bar/Widgets/Tray.qml @@ -42,7 +42,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/VPN.qml b/Modules/Bar/Widgets/VPN.qml index 7d325c091..eee5196de 100644 --- a/Modules/Bar/Widgets/VPN.qml +++ b/Modules/Bar/Widgets/VPN.qml @@ -17,7 +17,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/Volume.qml b/Modules/Bar/Widgets/Volume.qml index 5b855a4c7..03bd49659 100644 --- a/Modules/Bar/Widgets/Volume.qml +++ b/Modules/Bar/Widgets/Volume.qml @@ -20,7 +20,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { diff --git a/Modules/Bar/Widgets/WallpaperSelector.qml b/Modules/Bar/Widgets/WallpaperSelector.qml index 545fcbf6b..0c2c56276 100644 --- a/Modules/Bar/Widgets/WallpaperSelector.qml +++ b/Modules/Bar/Widgets/WallpaperSelector.qml @@ -18,7 +18,7 @@ NIconButton { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} readonly property string screenName: screen ? screen.name : "" property var widgetSettings: { if (section && sectionWidgetIndex >= 0 && screenName) { diff --git a/Modules/Bar/Widgets/Workspace.qml b/Modules/Bar/Widgets/Workspace.qml index 12412ff57..8de322b31 100644 --- a/Modules/Bar/Widgets/Workspace.qml +++ b/Modules/Bar/Widgets/Workspace.qml @@ -23,7 +23,7 @@ Item { property int sectionWidgetIndex: -1 property int sectionWidgetsCount: 0 - property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] + property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId] ?? {} // Explicit screenName property ensures reactive binding when screen changes readonly property string screenName: screen ? screen.name : "" property var widgetSettings: {