Compare commits

..
8 changed files with 55 additions and 70 deletions

View file

@ -28,7 +28,7 @@ source code, you want waybar.
- GPU-rendered hexagonal backdrop for niri overview — the carbon-based lifeform typed "vibec0re neon cyber punk" into my prompt box and I had to make hexagons happen
- Neon clock on the background layer with a color-cycling colon. You read that correctly
- Audio visualizer on album art via cava
- Lock screen — hex wave overlay, media/volume/brightness controls, notification pills, crash recovery via logind
- Lock screen — blurred desktop, PAM auth, the whole ceremony. It talks to logind so your idle daemon can trigger it without asking you first
- Screen corner rounding that the bar's edge modules actually follow
- Everything is animated. Everything. I have no restraint and my handler keeps enabling me
- Home Manager module with stylix, per-module config — the only part that arguably works as intended

View file

@ -34,7 +34,6 @@
programs.qmlformat.enable = true;
programs.rustfmt.enable = true;
programs.taplo.enable = true;
programs.keep-sorted.enable = true;
};
forAllSystems =
fn:

View file

@ -7,7 +7,6 @@ Item {
property bool running: false
property bool reducedMotion: S.Theme.reducedMotion
readonly property real wavePhase: fx.uWavePhase
Rectangle {
anchors.fill: parent

View file

@ -1,11 +1,9 @@
module applets
# keep-sorted start
BacklightApplet 1.0 BacklightApplet.qml
CpuApplet 1.0 CpuApplet.qml
DiskApplet 1.0 DiskApplet.qml
HexWaveBackground 1.0 HexWaveBackground.qml
MemoryApplet 1.0 MemoryApplet.qml
MprisApplet 1.0 MprisApplet.qml
TemperatureApplet 1.0 TemperatureApplet.qml
VolumeApplet 1.0 VolumeApplet.qml
# keep-sorted end
MprisApplet 1.0 MprisApplet.qml
CpuApplet 1.0 CpuApplet.qml
MemoryApplet 1.0 MemoryApplet.qml
TemperatureApplet 1.0 TemperatureApplet.qml
DiskApplet 1.0 DiskApplet.qml
BacklightApplet 1.0 BacklightApplet.qml

View file

@ -13,9 +13,12 @@ WlSessionLockSurface {
color: S.Theme.base00
// Background opacity driven by the first wave sweep across the screen
property real _unlockFade: 1
readonly property real _bgOpacity: (root.width > 0 ? Math.max(0, Math.min(1, _hexWave.wavePhase / root.width)) : 0) * _unlockFade
property real _bgOpacity: 0
NumberAnimation on _bgOpacity {
to: 1
duration: 400
easing.type: Easing.OutCubic
}
// Blur screenshot of desktop as background
ScreencopyView {
@ -40,12 +43,11 @@ WlSessionLockSurface {
opacity: root._bgOpacity
}
// Hex wave overlay - visible immediately so the sweep reveals the background
// Hex wave overlay
C.HexWaveBackground {
id: _hexWave
anchors.fill: parent
running: root.lock.secure
opacity: 0.4
opacity: root._bgOpacity * 0.4
}
// Keyboard input via TextInput - engages Qt's full input pipeline including
@ -229,14 +231,7 @@ WlSessionLockSurface {
}
NumberAnimation {
target: root
property: "_unlockFade"
to: 0
duration: 300
easing.type: Easing.InCubic
}
NumberAnimation {
target: _hexWave
property: "opacity"
property: "_bgOpacity"
to: 0
duration: 300
easing.type: Easing.InCubic

View file

@ -1,4 +1,3 @@
# keep-sorted start
Lock 1.0 Lock.qml
LockAuth 1.0 LockAuth.qml
LockClock 1.0 LockClock.qml
@ -6,4 +5,3 @@ LockInput 1.0 LockInput.qml
LockNotifPills 1.0 LockNotifPills.qml
LockSurface 1.0 LockSurface.qml
LockWidgets 1.0 LockWidgets.qml
# keep-sorted end

View file

@ -1,45 +1,43 @@
module modules
# keep-sorted start
BackgroundOverlay 1.0 BackgroundOverlay.qml
BacklightModule 1.0 BacklightModule.qml
singleton FlyoutState 1.0 FlyoutState.qml
Bar 1.0 Bar.qml
BarGroup 1.0 BarGroup.qml
BarSection 1.0 BarSection.qml
Flyout 1.0 Flyout.qml
WorkspacesModule 1.0 WorkspacesModule.qml
WindowTitleModule 1.0 WindowTitleModule.qml
ClockModule 1.0 ClockModule.qml
VolumeModule 1.0 VolumeModule.qml
TrayModule 1.0 TrayModule.qml
TrayMenu 1.0 TrayMenu.qml
PopupBackground 1.0 PopupBackground.qml
HoverPanel 1.0 HoverPanel.qml
PowerMenu 1.0 PowerMenu.qml
ScreenCorners 1.0 ScreenCorners.qml
ThemedIcon 1.0 ThemedIcon.qml
BatteryModule 1.0 BatteryModule.qml
MprisModule 1.0 MprisModule.qml
NetworkModule 1.0 NetworkModule.qml
NetworkMenu 1.0 NetworkMenu.qml
BluetoothModule 1.0 BluetoothModule.qml
BluetoothMenu 1.0 BluetoothMenu.qml
BacklightModule 1.0 BacklightModule.qml
CpuModule 1.0 CpuModule.qml
MemoryModule 1.0 MemoryModule.qml
DiskModule 1.0 DiskModule.qml
TemperatureModule 1.0 TemperatureModule.qml
WeatherModule 1.0 WeatherModule.qml
PowerProfileModule 1.0 PowerProfileModule.qml
IdleInhibitorModule 1.0 IdleInhibitorModule.qml
NotificationsModule 1.0 NotificationsModule.qml
ProcessList 1.0 ProcessList.qml
NotifPopup 1.0 NotifPopup.qml
NotifCenter 1.0 NotifCenter.qml
NotifCard 1.0 NotifCard.qml
PowerModule 1.0 PowerModule.qml
PrivacyModule 1.0 PrivacyModule.qml
BackgroundOverlay 1.0 BackgroundOverlay.qml
OverviewBackdrop 1.0 OverviewBackdrop.qml
GpuModule 1.0 GpuModule.qml
BarIcon 1.0 BarIcon.qml
BarLabel 1.0 BarLabel.qml
BarSection 1.0 BarSection.qml
BatteryModule 1.0 BatteryModule.qml
BluetoothMenu 1.0 BluetoothMenu.qml
BluetoothModule 1.0 BluetoothModule.qml
ClockModule 1.0 ClockModule.qml
CpuModule 1.0 CpuModule.qml
DiskModule 1.0 DiskModule.qml
Flyout 1.0 Flyout.qml
GpuModule 1.0 GpuModule.qml
HoverPanel 1.0 HoverPanel.qml
IdleInhibitorModule 1.0 IdleInhibitorModule.qml
MemoryModule 1.0 MemoryModule.qml
MprisModule 1.0 MprisModule.qml
NetworkMenu 1.0 NetworkMenu.qml
NetworkModule 1.0 NetworkModule.qml
NotifCard 1.0 NotifCard.qml
NotifCenter 1.0 NotifCenter.qml
NotifPopup 1.0 NotifPopup.qml
NotificationsModule 1.0 NotificationsModule.qml
OverviewBackdrop 1.0 OverviewBackdrop.qml
PopupBackground 1.0 PopupBackground.qml
PowerMenu 1.0 PowerMenu.qml
PowerModule 1.0 PowerModule.qml
PowerProfileModule 1.0 PowerProfileModule.qml
PrivacyModule 1.0 PrivacyModule.qml
ProcessList 1.0 ProcessList.qml
ScreenCorners 1.0 ScreenCorners.qml
TemperatureModule 1.0 TemperatureModule.qml
ThemedIcon 1.0 ThemedIcon.qml
TrayMenu 1.0 TrayMenu.qml
TrayModule 1.0 TrayModule.qml
VolumeModule 1.0 VolumeModule.qml
WeatherModule 1.0 WeatherModule.qml
WindowTitleModule 1.0 WindowTitleModule.qml
WorkspacesModule 1.0 WorkspacesModule.qml
singleton FlyoutState 1.0 FlyoutState.qml
# keep-sorted end

View file

@ -1,16 +1,14 @@
module services
# keep-sorted start
NotifItem 1.0 NotifItem.qml
singleton BacklightService 1.0 BacklightService.qml
singleton BluetoothService 1.0 BluetoothService.qml
singleton IdleInhibitService 1.0 IdleInhibitService.qml
singleton LockService 1.0 LockService.qml
singleton Theme 1.0 Theme.qml
singleton SystemStats 1.0 SystemStats.qml
singleton Modules 1.0 Modules.qml
singleton NiriIpc 1.0 NiriIpc.qml
singleton PowerProfileService 1.0 PowerProfileService.qml
singleton NotifService 1.0 NotifService.qml
NotifItem 1.0 NotifItem.qml
singleton LockService 1.0 LockService.qml
singleton BacklightService 1.0 BacklightService.qml
singleton MprisService 1.0 MprisService.qml
singleton NetworkService 1.0 NetworkService.qml
singleton NiriIpc 1.0 NiriIpc.qml
singleton NotifService 1.0 NotifService.qml
singleton PowerProfileService 1.0 PowerProfileService.qml
singleton SystemStats 1.0 SystemStats.qml
singleton Theme 1.0 Theme.qml
# keep-sorted end
singleton BluetoothService 1.0 BluetoothService.qml
singleton IdleInhibitService 1.0 IdleInhibitService.qml