* initial implementation
* add borderless to edit and plugin cli commands
* allow changing existing pane to borderless
* allow setting in layouts and keybindings
* get to work through the existing plugin api commands
* fix when applying (swap) layouts
* fix tests
* allow setting pane as bordered (borderful?) when changing its coordinates (eg. through the cli)
* allow explicitly setting a pane as bordered or borderless without toggling
* rustfmt
* adjust snapshots
* docs(changelog): add PR
* build(cargo): Define shared manifest properties workspace-wide
in order to allow workspace members to easily copy their values, rather
than copying the actual values manually between files. Prepare for a
future update of the Rust edition this way by defining the edition in
one central location.
* build(cargo): Share the license between all workspace members
and don't copy the actual license value manually between crates.
* build(cargo): Share the rust edition between workspace members
rather than manually defining the value per crate. There is no
apparent advantage in having different parts of the code use different
rust editions. It only makes the code inconsistent, which is not a goal
worth striving for.
* build(cargo): Share the crate version between workspace members
at least for those workspace members that are versioned in lockstep.
* refactor(session-manager): Migrate to Rust edition 2021
from edition 2018 in order to use a single unified Rust edition across
the entire workspace. Apparently the migration does not involve changes
to the actual code.
* refactor(plugin-manager): Migrate to Rust edition 2021
from edition 2018 in order to use a single unified Rust edition across
the entire workspace. Apparently the migration does not involve changes
to the actual code.
* build(zellij-utils): Remove the obsolete build script
which has contained nothing but comments for two years now. The initial
"workaround" has by now become the proper solution and the original
issue (see <https://github.com/zellij-org/zellij/pull/2711>) has never
been heard of since.
The real motivation for this change is the simple fact that this version
of prost-build pulled in a pretty old version of the `which` crate which
doesn't appear to build with Rust 1.89 (latest stable as of now).
* build(cargo): Update Rust toolchain to 1.89
which is the latest stable toolchain as of writing this and has support
for the 2024 Rust edition, unlike the previously used 1.84.
* fixup! build(zellij-utils): Remove the obsolete build script
* refactor: Make implicitly elided lifetimes explicit
in cases where a functions return type has an actual lifetime that
depends on a non `'static` argument.
* build(cargo): Update Rust toolchain to 1.90.0
which is the latest stable toolchain as of writing this. Compared to
1.89.0 this changes the default linker and should, hence, cut down
iteration times during development significantly.
* ci: Force configured rust toolchain version in release builds
for the tagged release assets. Previously the rust version was
unconditionally overwritten to be `stable` regardless of what
`rust-toolchain.toml` configured.
* docs(changelog): Add MR #4457
to list of unreleased changes.
* build: Read package version from workspace version value
since it no longer resides directly in the `package` object.
* fix(typo): fix a typo in error message
* fix(typo): fix typo in Tip #6
* fix(logging): silence filesystem error
This `Option` chain already ends with `.unwrap_or_else(Default::default)`
so it's clearly expected that prior operations in the chain may fail. I
didn't have the default `layout_dir` on my computer, and it would fill my
logfile with unhelpful spam — on every pane creation, resize, etc.
* fix(stacked): stacked panes can't resize status-bar
* fix(e2e): race in multiple users test
---------
Co-authored-by: Aram Drevekenin <aram@poor.dev>
* add some tips
* refactoring and max tip index
* add config to disable release notes and startup tips
* allow dismissing startup tips from plugin
* random tip at startup
* custom launch about
* fix tests
* style(fmt): rustfmt
* basic about screen
* work
* finish implementing about plugin except theme spec
* show about plugin only on first version run
* some cleanups and do the right thing with open/xdg-open
* refactor: make ui framework
* refactor: remove old stuff
* refactor: about plugin
* style(fmt): rustfmt
* chore(repo): about plugin asset
* fix tests
* style(fmt): rustfmt!!