Move tiling exceptions to configuration file

This commit is contained in:
Richard Weber 2024-08-14 21:56:20 +03:00 committed by Victoria Brekenfeld
parent 7da0bc430a
commit e8947b8742
6 changed files with 94 additions and 77 deletions

View file

@ -1,6 +1,7 @@
use calloop::LoopHandle;
use grabs::SeatMoveGrabState;
use indexmap::IndexMap;
use layout::TilingExceptions;
use std::{
collections::HashMap,
sync::atomic::Ordering,
@ -257,6 +258,7 @@ pub struct Shell {
Output,
)>,
resize_indicator: Option<ResizeIndicator>,
tiling_exceptions: TilingExceptions,
#[cfg(feature = "debug")]
pub debug_active: bool,
@ -1250,6 +1252,7 @@ impl Shell {
resize_mode: ResizeMode::None,
resize_state: None,
resize_indicator: None,
tiling_exceptions: layout::TilingExceptions::new(config),
#[cfg(feature = "debug")]
debug_active: false,
@ -2093,7 +2096,7 @@ impl Shell {
&& (workspace_output != seat.active_output() || active_handle != workspace.handle);
let workspace_handle = workspace.handle;
let is_dialog = layout::is_dialog(&window);
let floating_exception = layout::has_floating_exception(&window);
let floating_exception = layout::has_floating_exception(&self.tiling_exceptions, &window);
let maybe_focused = workspace.focus_stack.get(&seat).iter().next().cloned();
if let Some(focused) = maybe_focused {