Commit Graph
9 Commits
Author SHA1 Message Date
Aram Drevekenin c7c4ce42b8 Allow renaming sessions from session mode (#5754)
* feat: allow renaming sessions from session mode

* rustfmt

* fix tests

* manually download protoc

* add pr
2026-10-22 18:11:26 +02:00
Aram Drevekenin a28f3ca9c2 Adjust Setup for Desktop Window (#5750)
* setup wizard

* rustfmt

* fix ci issues

* fix integration tests

* harden flaky tests

* fix ipc creation races
2026-10-22 10:41:39 +02:00
Aram Drevekenin 3ce7e7dc71 Inbox, notifications, better session-manager, desktop integration (#5734)
* feat(attention): add per-pane attention status with OSC 7501/133/633 parsing, frame symbols, mute/ignore/watch and plugin API

* revamp attention plugin

* desktopify attention

* tests, protobuffs, etc.

* strengthen tests

* desktop integrations

* test cases and hardening

* fix(app): keep tests off the live desktop app socket and recover from a lost socket

* fix(attention): readable tab marks, persist session mute, fix inbox clicks, rename socket, standalone windows and flaky tests

* unify new window keybindings

* fix: return to session shortcut display

* hide hover hints

* rustfmt

* merge

* fix tests

* fix tests

* fix tab-bar race

* fix tests again

* fix: prevent out of order cached pty writes on startup

* add pr
2026-10-20 13:29:16 +02:00
Aram Drevekenin 519a23715c Grapheme cluster support (#5714)
* initial implementation

* optimizations

* grapheme_clusters config, emoji font, VS15/Hangul/accent rendering fixes

* add pr

* fix flaky tests

* fix more flakes and some races
2026-10-14 11:21:38 +02:00
bc66c40189 feat: zellij terminal window (#5652)
* feat: zellij terminal window

* rustfmt

* improve default theme, bundle Nerd font icons, fix some rendering issues

* opacity

* remember window size

* rustfmt

* pref: improve input echo speed

* font schenanigens: padding, line height, cell width, font weight, etc.

* fullscreen toggle, close confirmation dialog, hide pointer while typing, hollow unfocused cursor, minimum contrast

* smooth scrolling

* scroll momentum

* rustfmt

* fix tests

* fix: show popups only once drawn at their requested size

* session suggestions

* moar suggestion tests

* macos option as alt

* macos system bell

* merge wrapups and tests

* dead keys, font size in points, extra tests

* terminal window config in settings

* shift+mouse highlighting and link-clicking in window

* rustfmt

* adjust window error messages

* confirm on quit

* fix popup and multiplayer cursors, mouse pointer shapes for ui elements

* rebase stragglers

* fix(window): keep a dead key's accent through modifier keys

A dead key followed by a character it can't combine with lost its
accent when that character needed Shift or AltGr: on a French AZERTY
layout, `^` then `/` typed `/` instead of `^/`. The window settled the
accent on the next key press, the Shift or AltGr press included, while
Windows keeps the dead key until a key produces text and reports the
accent in that key's text, which the window then ignored.

Leave a pending accent alone on modifier and lock keys, and type a
character key's text when it carries an accent ahead of the character,
which also covers an accent Windows kept through an arrow key.

(cherry picked from commit 7822bf4c02)

* fix: filter out locked sessions

* rustfmt

* fix e2e

* add pr

---------

Co-authored-by: Thomas Linford <linford.t@gmail.com>
Co-authored-by: divens <divens.dev@gmail.com>
2026-10-12 17:10:13 +02:00
Aram Drevekenin b1033be2a3 Improved mouse handling (#5697)
* configurable mouse bindings

* feat(bars): reorder tabs with mouse drag, clickable status-bar shortcuts with hover effects

* fix tests

* add pr
2026-10-09 11:59:23 +02:00
Aram Drevekenin 201c1593da Interactive configuration, popups, notifications, right-click menu (#5685)
* ui components

* right click menu + popups

* settings screen

* various fixes

* presets in config

* zellij prompt - ui elements in the cli

* context menu shortcuts and toggle, keybindings in popups, info popups + zellij prompt notify

* smart config writing and some leftovers

* keybindings/right-click/config editors

* some wrapups

* feat(plugins): add prompt() plugin API for zellij:prompt, dialog forms, and Text labels in widgets

* theme editors

* upstream by-id action types, config env for new panes only, smaller saved menu config, web right-click, example config

* upstreamify

* rustfmt

* fix windows and theme editor layout

* add pr
2026-10-05 18:46:12 +02:00
ZykinoandZykino ef497e1ae3 NestedListItem::new require Text instead of &str (#5611)
Part of the change was done with `ast-grep run -p 'Text::new($A)' -r 'Text::from($A)' --update-all`

Co-authored-by: Zykino <3809938+Zykino@users.noreply.github.com>
2026-09-30 19:26:19 +02:00
Aram Drevekenin 208a0da5e9 Resource usage optimizations (#5662)
* shared instance plugins

* reduce needless allocations and share memory

* fix: read buffer bug

* idle plugin fixes and optimizations

* trim allocator for glibc on pane close

* fix flaky integration tests

* refactor: naming

* rustfmt

* add pr
2026-09-28 10:58:12 +02:00