You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit adds the ability to set a container and workspace padding
per monitor. To do so and to simplify any future need of changing some
value per monitor and have it pass through to each workspace a new field
was added to the `Workspace` called `globals` which has a new struct
called `WorkspaceGlobals` which includes any global values that might be
needed by the workspace.
This field is updated by the monitor for all its workspaces whenever the
config is loaded or reloaded. It is also updated on `RetileAll` and on
the function `update_focused_workspace`. This should make sure that
every time a workspace needs to use it's `update` function it has all
the `globals` up to date!
This also means that now the `update` function from workspaces doesn't
take any argument at all, reducing all the need to get all the
`work_area`, `work_area_offset`, `window_based_work_area_offset` or
`window_based_work_area_offset_limit` simplifying the callers of this
function quite a bit.
Lastly this commit has also (sort of accidentaly) fixed an existing bug
with the `move_workspace_to_monitor` function which was removing the
workspace from a monitor but wasn't changing it's `focused_workspace_idx`
meaning that komorebi would get all messed up after that command, like
the `border_manager` would get stuck and the komorebi-bar would crash.
Now the `remove_focused_workspace` function also focus the previous
workspace (which in turn will create a new workspace in case the removed
one was the last workspace).
0 commit comments