From 8a6ee916472f6b2b7c282706a26701f831b09c47 Mon Sep 17 00:00:00 2001 From: Ian Douglas Scott Date: Thu, 5 Jan 2023 18:41:48 -0800 Subject: [PATCH] More toplevel fixes --- src/main.rs | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/main.rs b/src/main.rs index d9544ba..77c0d86 100644 --- a/src/main.rs +++ b/src/main.rs @@ -299,8 +299,9 @@ fn layer_surface<'a>(app: &'a App, surface: &'a LayerSurface) -> cosmic::Element ), toplevel_previews(app.toplevels.iter().filter(|i| { if let Some(workspace) = &i.info.workspace { - app.workspace_for_handle(workspace) - .map_or(false, |x| x.is_active) + app.workspace_for_handle(workspace).map_or(false, |x| { + x.is_active && x.output_name == surface.output_name + }) } else { false } @@ -339,10 +340,14 @@ fn toplevel_preview<'a>(toplevel: &'a Toplevel) -> cosmic::Element<'a, Msg> { // capture of window // - selectable // name of window - widget::button(widget::Image::new(toplevel.img.clone().unwrap_or_else( - || widget::image::Handle::from_pixels(0, 0, vec![0, 0, 0, 255]), - ))) - .on_press(Msg::ActivateToplevel(toplevel.handle.clone())) + widget::column![ + widget::button(widget::text("X")), // TODO close button + widget::button(widget::Image::new(toplevel.img.clone().unwrap_or_else( + || widget::image::Handle::from_pixels(0, 0, vec![0, 0, 0, 255]), + ))) + .on_press(Msg::ActivateToplevel(toplevel.handle.clone())), + widget::text(&toplevel.info.title) + ] .into() }