fn layouts_mut(&mut self, wsid: usize, tagid: usize) -> &mut Vec<Layout> {
        let id = self.id(wsid, tagid);
        self.layouts.entry(id).or_insert_with(|| match &self.mode {
            LayoutMode::Tag => self.available_layouts.clone(),
            LayoutMode::Workspace => self
                .available_layouts_per_ws
                .get(&wsid)
                .unwrap_or(&self.available_layouts)
                .clone(),
        })
    }
Get the mutable layouts for the provided workspace / tag context

If the layouts for the specific workspace / tag have not
yet been set up, they will be initialized by copying
from the [`Self::available_layouts`] or [`Self::available_layouts_per_ws`].
leftwm-core/src/layouts/layout_manager.rs