diff --git a/Modules/Bar/Widgets/PowerToggle.qml b/Modules/Bar/Widgets/PowerToggle.qml new file mode 100644 index 0000000..405d37d --- /dev/null +++ b/Modules/Bar/Widgets/PowerToggle.qml @@ -0,0 +1,21 @@ +import QtQuick +import QtQuick.Layouts +import Quickshell +import qs.Commons +import qs.Services +import qs.Widgets + +NIconButton { + id: root + + property ShellScreen screen + property real scaling: ScalingService.scale(screen) + + icon: "power_settings_new" + tooltipText: "Power Settings" + colorBg: Color.mSurfaceVariant + colorFg: Color.mError + colorBorder: Color.transparent + colorBorderHover: Color.transparent + onClicked: PanelService.getPanel("powerPanel")?.toggle(screen) +} \ No newline at end of file diff --git a/Services/BarWidgetRegistry.qml b/Services/BarWidgetRegistry.qml index b2f2b5a..7eb6be0 100644 --- a/Services/BarWidgetRegistry.qml +++ b/Services/BarWidgetRegistry.qml @@ -24,6 +24,7 @@ Singleton { "NightLight": nightLightComponent, "NotificationHistory": notificationHistoryComponent, "PowerProfile": powerProfileComponent, + "PowerToggle": powerToggleComponent, "ScreenRecorderIndicator": screenRecorderIndicatorComponent, "SidePanelToggle": sidePanelToggleComponent, "SystemMonitor": systemMonitorComponent, @@ -87,6 +88,9 @@ Singleton { property Component powerProfileComponent: Component { PowerProfile {} } + property Component powerToggleComponent: Component { + PowerToggle {} + } property Component screenRecorderIndicatorComponent: Component { ScreenRecorderIndicator {} }