diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2025-04-30 20:16:45 +0300 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2025-04-30 20:32:56 +0300 |
| commit | 9fb02b9571a7d84c9e6a93b75e5352c411113640 (patch) | |
| tree | 5f5ce8e3cc9ec6588dc8757aae6d650af3b94c29 /src/layout/mod.rs | |
| parent | 0e9496b01e04719c68f19b80f3579258ae70b956 (diff) | |
| download | niri-9fb02b9571a7d84c9e6a93b75e5352c411113640.tar.gz niri-9fb02b9571a7d84c9e6a93b75e5352c411113640.tar.bz2 niri-9fb02b9571a7d84c9e6a93b75e5352c411113640.zip | |
layout: Fix DnD scroll not stopping when interactive moving unfullscreen to floating
Diffstat (limited to 'src/layout/mod.rs')
| -rw-r--r-- | src/layout/mod.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/layout/mod.rs b/src/layout/mod.rs index e62380b2..1906acd0 100644 --- a/src/layout/mod.rs +++ b/src/layout/mod.rs @@ -4225,8 +4225,14 @@ impl<W: LayoutElement> Layout<W> { is_floating = unfullscreen_to_floating; } - // Animate to semitransparent. - if !is_floating { + if is_floating { + // Unlock the view in case we locked it moving a fullscreen window that is + // going to unfullscreen to floating. + for ws in self.workspaces_mut() { + ws.dnd_scroll_gesture_end(); + } + } else { + // Animate to semitransparent. tile.animate_alpha( 1., INTERACTIVE_MOVE_ALPHA, |
