diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2025-04-17 10:46:55 +0300 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2025-04-25 02:00:18 -0700 |
| commit | acb69c3b4df81ad6869603fda51bc3b0e6b8830c (patch) | |
| tree | 66659def3d7c49ea6133fd731dd8617bd269bd6a /src/layout/workspace.rs | |
| parent | dbe0a9e2931b17ac113bdc90d610cf9a28029629 (diff) | |
| download | niri-acb69c3b4df81ad6869603fda51bc3b0e6b8830c.tar.gz niri-acb69c3b4df81ad6869603fda51bc3b0e6b8830c.tar.bz2 niri-acb69c3b4df81ad6869603fda51bc3b0e6b8830c.zip | |
layout: Return floating and scrolling elems separately from Workspace
Diffstat (limited to 'src/layout/workspace.rs')
| -rw-r--r-- | src/layout/workspace.rs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/layout/workspace.rs b/src/layout/workspace.rs index f7690ee1..af899966 100644 --- a/src/layout/workspace.rs +++ b/src/layout/workspace.rs @@ -1409,7 +1409,10 @@ impl<W: LayoutElement> Workspace<W> { renderer: &mut R, target: RenderTarget, focus_ring: bool, - ) -> impl Iterator<Item = WorkspaceRenderElement<R>> { + ) -> ( + impl Iterator<Item = WorkspaceRenderElement<R>>, + impl Iterator<Item = WorkspaceRenderElement<R>>, + ) { let scrolling_focus_ring = focus_ring && !self.floating_is_active(); let scrolling = self .scrolling @@ -1424,8 +1427,9 @@ impl<W: LayoutElement> Workspace<W> { .render_elements(renderer, view_rect, target, floating_focus_ring); floating.into_iter().map(WorkspaceRenderElement::from) }); + let floating = floating.into_iter().flatten(); - floating.into_iter().flatten().chain(scrolling) + (floating, scrolling) } pub fn render_above_top_layer(&self) -> bool { |
