diff --git a/shell/lock/LockSurface.qml b/shell/lock/LockSurface.qml index 5a7c8eb..ed23ad2 100644 --- a/shell/lock/LockSurface.qml +++ b/shell/lock/LockSurface.qml @@ -25,22 +25,23 @@ WlSessionLockSurface { // Overlay group: blur + dim + hexes, revealed per-pixel by wave position Item { - id: _overlay anchors.fill: parent opacity: _unlockFade property bool _revealed: false - onVisibleChanged: _revealed = false layer.enabled: !_revealed layer.effect: ShaderEffect { property real uPhase: _hexWave.wavePhase property real uWidth: root.width fragmentShader: Quickshell.shellPath("modules/reveal_mask.frag.qsb") + } - onUPhaseChanged: { - if (!_overlay._revealed && uPhase >= _overlay.width) - _overlay._revealed = true; + Connections { + target: _hexWave + function onWavePhaseChanged() { + if (!parent._revealed && _hexWave.wavePhase >= root.width) + parent._revealed = true; } } @@ -59,6 +60,12 @@ WlSessionLockSurface { } } + // Dim overlay + Rectangle { + anchors.fill: parent + color: Qt.rgba(S.Theme.base00.r, S.Theme.base00.g, S.Theme.base00.b, 0.4) + } + // Hex wave C.HexWaveBackground { id: _hexWave