shell: Add window menu

This commit is contained in:
Victoria Brekenfeld 2023-12-07 19:53:41 +00:00 committed by Victoria Brekenfeld
parent edfb0edda7
commit 8c4d77e43c
14 changed files with 1591 additions and 32 deletions

View file

@ -12,7 +12,9 @@ use std::{
use crate::debug::{fps_ui, profiler_ui};
use crate::{
shell::{
focus::target::WindowGroup, grabs::SeatMoveGrabState, layout::tiling::ANIMATION_DURATION,
focus::target::WindowGroup,
grabs::{SeatMenuGrabState, SeatMoveGrabState},
layout::tiling::ANIMATION_DURATION,
CosmicMapped, CosmicMappedRenderElement, OverviewMode, SessionLock, Trigger,
WorkspaceRenderElement,
},
@ -422,6 +424,17 @@ where
{
elements.extend(grab_elements);
}
if let Some(grab_elements) = seat
.user_data()
.get::<SeatMenuGrabState>()
.unwrap()
.borrow()
.as_ref()
.map(|state| state.render::<CosmicMappedRenderElement<R>, R>(renderer, output))
{
elements.extend(grab_elements.into_iter().map(Into::into));
}
}
elements