zellij/CHANGELOG.md
har7an 62eaea1583
Reimplement resize code (#1990)
* server/floating_panes: Start removing `unwrap`s

* server/panes: Remove more `unwrap`s

in floating panes code.

* utils/data: Unify `Direction` type

which was previously present in multiple locations.
Also start working on a new Resize Method (type `ResizeStrategy`), to
remove code duplication in the resize code.

* server: Implement new resize handling

with the `ResizeStrategy` type. Add a new action with the ability to
invoke it from the CLI. Take care to maintain backwards-compatibility in
terms of configuring the new resize mode.

* utils/layout: Add conversion for SplitDirection

from `data::Direction`.

* utils/data: Add impl for `Direction`

* server/panes: Rework tiled pane resizing

but it's currently still broken in a few regards and misses ability to
perform "regular" increase/decrease.

* server/panes/tiled_panes: Add debug assertion

to catch if the total area of all panes (in percent) is different from
100.0 at some point.

* server/panes/tiled/grid: Fix resize bug

caused by the fact that neighboring plugin panes previously weren't
filtered from resize operations, even though they cannot be resized at
all.

* utils/data: Add `invert` for `Resize`

* utils/data: Add member to `ResizeStrategy`

that controls whether we invert resize behavior when increasing size
towards a bounadry. This maintains current behavior.

* server/screen: Handle new attribute

in `ResizeStrategy`

* server/panes/resizer: Return `anyhow::Error`

* server/panes/tiled: Implement resize increase/decrease

without specifying a direction (towards all possible directions).
Currently broken in some cases.

* server/pane/tiled/grid: Don't return early

to preserve resize debug assertions.

* server/pane/tiled/grid: Fix resize bug

caused by checking for the wrong alignments in some cases. Also refactor
the code for looking up aligned panes.

* server/panes/tiled/grid: Cleanup code

and remove log statements and unused functions.

* server/panes/float/grid: Invert resize

if the floating pane is hitting a boundary already.

* plugins/status-bar: Add hints for new resize

* server: Use new resize method

* server: Fix tests

with new functions and result types.

* apply rustfmt

* utils: Apply rustfmt

* server/panes/floating: Fix resize increase

behavior which would previously, upon hitting a boundary, cause the pane
to invert the resize operation, which is wrong. Instead, it now does not
resize floating panes on an undirected resize "increase" in directions
where it hits boundaries.

* server/panes/tiled: Use correct resize increments

The values for the resize increments were previously wrong, causing many
of the tests to fail.

* server/panes/tiled: Fix resize checks

to correctly consider fixed-size panes.

* utils/assets/config: Update default config

with new keybindings for resize mode.

* server/panes/tiled: Fix resize check

* server/panes/tiled: Use shortener for `Direction`

type in `change_pane_size` function.

* server/panes/tiled: Restore resize behavior

for undirected resizes, to the way it was before this PR.

* server/panes/floating: Fix resize increment

for undirected resizes

* utils/data: Fix doctest

* utils: Fix test snapshots

for tests working with the default config

* changelog: Add PR #1990
2022-12-08 12:50:28 +00:00

53 KiB
Raw Blame History

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog

[Unreleased]

[0.33.0] - 2022-11-10

[0.32.0] - 2022-10-25

[0.31.4] - 2022-09-09

[0.31.3] - 2022-08-18

  • HOTFIX: fix up-arrow regression

[0.31.2] - 2022-08-17

[0.31.1] - 2022-08-02

[0.31.0] - 2022-07-28

[0.30.0] - 2022-06-07

[0.29.1] - 2022-05-02

[0.29.0] - 2022-05-02

[0.28.1] - 2022-04-13

[0.27.0] - 2022-03-31

[0.26.1] - 2022-03-16

[0.26.0] - 2022-03-11

[0.25.0] - 2022-02-22

[0.24.0] - 2022-01-05

[0.23.0] - 2021-12-20

[0.22.1] - 2021-12-14

[0.22.0] - 2021-12-13

[0.21.0] - 2021-11-29

[0.20.1] - 2021-11-10

[0.20.0] - 2021-11-08

[0.19.0] - 2021-10-20

[0.18.1] - 2021-09-30

[0.18.0] - 2021-09-29

[0.17.0] - 2021-09-15

[0.16.0] - 2021-08-31

[0.15.0] - 2021-07-19

[0.14.0] - 2021-07-05

[0.13.0] - 2021-06-04

[0.12.1] - 2021-05-28

[0.12.0] - 2021-05-27

[0.11.0] - 2021-05-15

This version is mostly an installation hotfix.

[0.10.0] - 2021-05-14

[0.9.0] - 2021-05-11

[0.8.0] - 2021-05-07

[0.7.0] - 2021-05-04

[0.6.0] - 2021-04-29

[0.5.1] - 2021-04-23

[0.5.0] - 2021-04-20

Beta release with all the things