aboutsummaryrefslogtreecommitdiffstats
path: root/default-plugins/compact-bar/src/tab.rs (follow)
Commit message (Collapse)AuthorAge
* Nested session handling (#5417)Aram Drevekenin2026-07-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix: theme query and updated pixel dimensions * add no-ui-fullscreen key/action/capability * protocol core * integration test harness * fix integration tests * fix flaky tests * nested ui (dimming) and directional focus initial implementation * integration tests for nested ui dimming and directional focus * initial full screen nesteed implementation * fix: keep hidden floating panes hidden across nested no-ui fullscreen * fix integration tests * no ui fullscreen integration tests * hardening behavior/tests * fix(nested): re-derive descend/dim on host tab switch and new-tab so clicking dimmed chrome ascends * initial modal implementation * initial ui improvements * fix integration tests * improve nested selection ui * nested session modal refactoring and tests * improve integration test speed somewhat * some ui adjustments * simplify full/auto nested session handling * hints in compact-bar * guest stdin leak fix * allow floating panes to be fullscreen * make nested session handling configurable * protocol reannounce * refactor: naming confusion * improve ux somewhat * rustfmt * merge fixes * improve integration test rate limiting (fix ci) * add pr
* Visual indication for terminal bells (#4781)Aram Drevekenin2026-03-03
| | | | | | | | | | | | | * initial implementation * rustfmt * allow disabling with config * add missing kdl * add pr * fix tests
* build(cargo): Update Rust toolchain to 1.90.0 (#4457)har7an2025-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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(compact-bar): fix cursor length calculation for multiple users (#4279)Aram Drevekenin2025-07-09
| | | | | | | | | * fix(compact-bar): account for multiplayer cursor length * fix(e2e): account for races in tmux mode * style(fmt): rustfmt * docs(changelog): add PR
* feat(config): new theme definition spec (#3242)Mark Grey2025-02-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Implement initial structs from spec * kdl configuration unmarshalling * typo text styling * remove is_selected toggle * incorporate new status bar ui into theming * improve test coverage of config behavior * tab bar correction * correct also compact bar * remove spacing between table columns * refactor table styling * use text_unselected.emphasis_1 for keygroup sep * fix tab bar more text * repair field flattening for theme * remove extra styling KDL node * update tests * updated selected text conversion * padding for header bar * minor corrections for existing themes * background handling * compact bar corrections * properly handle opaque method to activate background * update newer plugins to use styling struct * correct omission of selected state * fix: bold typeface for text elements * fix: fg -> white for list_unselected conversion * fix: emphasis and opacity handling for nested_list * correct stylings in the session-manager * fix emphases translation for table component * correct emphasis for run instructions * correct frame_highlight translation for old themes * provide missing implementation of frame_highlight * fencepost emphasis color names * Set a pseudo-None for frame_unselected in old theme conversion * correct alternating bg for simplified-ui * update snapshots * fix inner text padding and errorneous snapshots * suppress warning about deprecated usage of palette * remove unused import * feat(plugins): API to change floating pane coordinates (#3958) * basic functionality through the cli * added to plugin api * add display area and viewport size to TabInfo * fix tests and add new one * some cleanups * refactor: extract pane_id parsing logic * style(fmt): rustfmt * docs(changelog): floating pane coordinate chagne API * fix(tiled-panes): opening panes from the cli (#3963) * feat(plugins): add `PastedText` Event (#3962) * working with text paste * handle utf8 conversion error * feat(plugins): add PastedText Event * docs(changelog): plugins pasted text event * black for table opaque background * properly apply opacity to table * correct padding for explicit width ribbons * feat(plugins): Allow opening panes near plugin (#3966) * added command + terminal variants * added editor variant * style(fmt): rustfmt * docs(changelog): plugin apis to open panes near plugin * feat(plugins): send info about $EDITOR and $SHELL (#3971) * feat(plugins): send info about $EDITOR and $SHELL * fix(e2e): snapshot update * docs(changelog): plugin editor and shell info * fix(floating-panes): when changing coordinates, if a pane is not floating - make it floating (#3972) * fix(panes): when changing floating pane coordinates, if the pane is not floating, float it * style(fmt): rustfmt * docs(changelog): floating pane coordinate fix * fix(break-pane): strip logical position when inserting pane to new tab (#3973) * docs(changelog): logical position fix * Optional frame_unselected theme * fixture with correct width to account for arrow padding * update snapshot and rustfmt --------- Co-authored-by: Aram Drevekenin <aram@poor.dev>
* feat(ui): bring back fullscreen indication (#3688)Aram Drevekenin2024-10-22
| | | | | * feat(ui): bring back fullscreen indication * fix e2e tests
* fix(tab-bar,compact-bar): tab switching with mouse sometimes not working (#2587)Thomas Linford2023-06-30
| | | | | | | | | | | | | * tab-bar: fix clicks sometimes not registering Caching the click position wasn't working across multiple plugin instances. Also a couple of refactors: - move the code with the tab switching logic inside update - avoid rendering when calling switch_tab_to, since it will happen anyway afterwards * same fix for compact-bar
* fix(compact-bar): mouse-click in simplified-ui (#1917)imsuck2022-11-17
| | | | | * fix(compact-bar): mouse-click in simplified-ui * fix(compact-bar): fix formatting
* feat(ui): tweak simplified UI (#1458)Aram Drevekenin2022-06-06
| | | | | | | * fix(ui): tweak simplified-ui tabs * fix(ui): tweak simplified-ui status bar * style(fmt): rustfmt
* add(plugin): `compact-bar` & `compact` layout (#1450)a-kenji2022-06-03
* add(plugin): `compact-bar` & `compact` layout * add(nix): `compact-bar` plugin * add(config): `compact-bar` to the config * add(workspace): `compact-bar` to workspace members * add(assets): `compact-bar` * chore(fmt): rustfmt * add(nix): add `compact-bar` * add: compact layout to dump command * nix(build): fix destination of copy command * add(makefile): add `compact-bar` to `plugin-build` * add(layout): `compact-bar` to layout * add: install `compact-bar` plugin * fix(test): update input plugin test * fix(plugin): default colors for compact-bar