shell: Add zoom UI

This commit is contained in:
Victoria Brekenfeld 2025-02-13 21:09:13 +01:00 committed by Victoria Brekenfeld
parent 55e4dd7c0f
commit f72d2b91f3
10 changed files with 1247 additions and 261 deletions

View file

@ -21,6 +21,7 @@ use crate::{
};
pub enum Stage<'a> {
ZoomUI,
SessionLock(Option<&'a LockSurface>),
LayerPopup {
layer: LayerSurface,
@ -69,6 +70,10 @@ fn render_input_order_internal<R: 'static>(
element_filter: ElementFilter,
mut callback: impl FnMut(Stage) -> ControlFlow<Result<R, OutputNoMode>, ()>,
) -> ControlFlow<Result<R, OutputNoMode>, ()> {
if shell.zoom_state.is_some() {
callback(Stage::ZoomUI)?;
}
// Session Lock
if let Some(session_lock) = &shell.session_lock {
return callback(Stage::SessionLock(session_lock.surfaces.get(output)));