summaryrefslogtreecommitdiffstats
path: root/zellij-server
AgeCommit message (Collapse)Author
2023-08-26fix(plugins): various ui fixes (#2731)Aram Drevekenin
2023-08-25fix(plugins): remove protobuf duplications (#2729)Aram Drevekenin
* fix(plugins): remove protobuf duplications * style(fmt): rustfmt
2023-08-25fix(plugins): make sure configuration is also part of the plugin keys (#2727)Aram Drevekenin
* fix(plugins): make sure configuration is also part of the plugin keys * no thanks clippy
2023-08-25feat(plugins): optionally move plugin to focused tab (#2725)Aram Drevekenin
* feat(plugins): move_to_focused_tab attribute for LaunchOrFocusPlugin * style(fmt): rustfmt
2023-08-24fix(ux): various ui/ux fixes (#2722)Aram Drevekenin
* force plugin render on permission request response * clear warnings * Revert "feat(ui): new status bar mode (#2619)" This reverts commit 27763d26ab83dd9f81c69c75601cbf6075f13790. * adjust status bar help * fix colors in session manager and shortcut in status-bar * adjust keybindings
2023-08-24feat(sessions): add a session manager to switch between sessions, tabs and ↵Aram Drevekenin
panes and create new ones (#2721) * write/read session metadata to disk for all sessions * switch session client side * fix tests * various adjustments * fix full screen focus bug in tiled panes * fix tests * fix permission sorting issue * cleanups * add session manager * fix tests * various cleanups * style(fmt): rustfmt * clear screen before switching sessions * I hate you clippy * truncate controls line to width * version session cache * attempt to fix plugin tests * style(fmt): rustfmt * another attempt to fix the tests in the ci
2023-08-12feat: add plugin permission system (#2624)Jae-Heon Ji
* WIP: add exaple of permission ui * feat: add request permission ui * feat: add caching permission in memory * feat: add permission check * feat: add file caching * fix: changes request * feat(ui): new status bar mode (#2619) * supermode prototype * fix integration tests * fix tests * style(fmt): rustfmt * docs(changelog): status-bar supermode * fix(rendering): occasional glitches while resizing (#2621) * docs(changelog): resize glitches fix * chore(version): bump development version * Fix colored pane frames in mirrored sessions (#2625) * server/panes/tiled: Fix colored frames in mirrored sessions. Colored frames were previously ignored because they were treated like floating panes when rendering tiled panes. * CHANGELOG: Add PR #2625 * server/tab/unit: Fix unit tests for server. * fix(sessions): use custom lists of adjectives and nouns for generating session names (#2122) * Create custom lists of adjectives and nouns for generating session names * move word lists to const slices * add logic to retry name generation * refactor - reuse the name generator - iterator instead of for loop --------- Co-authored-by: Thomas Linford <linford.t@gmail.com> * docs(changelog): generate session names with custom words list * feat(plugins): make plugins configurable (#2646) * work * make every plugin entry point configurable * make integration tests pass * make e2e tests pass * add test for plugin configuration * add test snapshot * add plugin config parsing test * cleanups * style(fmt): rustfmt * style(comment): remove commented code * docs(changelog): configurable plugins * style(fmt): rustfmt * touch up ui * fix: don't save permission data in memory * feat: load cached permission * test: add example test (WIP) * fix: issue event are always denied * test: update snapshot * apply formatting * refactor: update default cache function * test: add more new test * apply formatting * Revert "apply formatting" This reverts commit a4e93703fbfdb6865131daa1c8b90fc5c36ab25e. * apply format * fix: update cache path * apply format * fix: cache path * fix: update log level * test for github workflow * Revert "test for github workflow" This reverts commit 01eff3bc5d1627a4e60bc6dac8ebe5500bc5b56e. * refactor: permission cache * fix(test): permission grant/deny race condition * style(fmt): rustfmt * style(fmt): rustfmt * configure permissions * permission denied test * snapshot * add ui for small plugins * style(fmt): rustfmt * some cleanups --------- Co-authored-by: Aram Drevekenin <aram@poor.dev> Co-authored-by: har7an <99636919+har7an@users.noreply.github.com> Co-authored-by: Kyle Sutherland-Cash <kyle.sutherlandcash@gmail.com> Co-authored-by: Thomas Linford <linford.t@gmail.com> Co-authored-by: Thomas Linford <tlinford@users.noreply.github.com>
2023-08-09feat(plugins): use protocol buffers for serializing across the wasm boundary ↵Aram Drevekenin
(#2686) * work * almost done with command protobuffers * done translating command data structures * mid transferring of every command to protobuff command * transferred plugin_command.rs, now moving on to shim.rs * plugin command working with protobufs * protobuffers in update * protobuf event tests * various TODOs and comments * fix zellij-tile * clean up prost deps * remove version mismatch error * fix panic * some cleanups * clean up event protobuffers * clean up command protobuffers * clean up various protobufs * refactor protobufs * update comments * some transformation fixes * use protobufs for workers * style(fmt): rustfmt * style(fmt): rustfmt * chore(build): add protoc * chore(build): authenticate protoc
2023-08-04fix(performance): plug memory leak (#2675)Aram Drevekenin
2023-08-02feat(ui): break pane to new tab and move panes between tabs (#2664)Aram Drevekenin
* prototype * some tests * break out floating pane * break out plugin panes * add keybind and fix some minor issues * remove cli * move pane to left/right tab * update ui * adjust ui * style(fmt): rustfmt * style(comment): remove commented code * update snapshots
2023-07-27fix(terminal): properly handle resizes in alternate screen (#2654)Aram Drevekenin
2023-07-25feat(plugins): make plugins configurable (#2646)Aram Drevekenin
* work * make every plugin entry point configurable * make integration tests pass * make e2e tests pass * add test for plugin configuration * add test snapshot * add plugin config parsing test * cleanups * style(fmt): rustfmt * style(comment): remove commented code
2023-07-16Fix colored pane frames in mirrored sessions (#2625)har7an
* server/panes/tiled: Fix colored frames in mirrored sessions. Colored frames were previously ignored because they were treated like floating panes when rendering tiled panes. * CHANGELOG: Add PR #2625 * server/tab/unit: Fix unit tests for server.
2023-07-12chore(version): bump development versionAram Drevekenin
2023-07-12fix(rendering): occasional glitches while resizing (#2621)Aram Drevekenin
2023-06-20chore(version): bump development versionAram Drevekenin
2023-06-20fix(plugins): make hide_self api idempotent (#2568)Aram Drevekenin
* fix(plugins): make hide_self api idempotent * style(fmt): rustfmt
2023-06-19chore(version): bump development versionAram Drevekenin
2023-06-19chore(version): bump development versionAram Drevekenin
2023-06-19fix(plugins): swap layouts and invoked_with (#2564)Aram Drevekenin
2023-06-18chore(version): bump development versionAram Drevekenin
2023-06-17feat(plugins): strider improvements (#2551)Aram Drevekenin
* fix(plugins): adjust debounce and smart file ignore in strider * style(comment): remove commented code * style(fmt): rustfmt
2023-06-17feat(plugins): more plugin api methods (#2550)Aram Drevekenin
* feat(plugins): close, focus, rename pane, rename tab and show_self api methods * style(fmt): rustfmt
2023-06-16performance(plugins): use a debounced fs watcher (#2546)Aram Drevekenin
* performance(plugins): use a debounced fs watcher * style(fmt): rustfmt * fix(macos): use recommended watcher
2023-06-15feat(plugins): plugin pane state events (#2545)Aram Drevekenin
* feat(plugins): report pane state to plugins * refactor(plugins): rename some stuff * tests(plugins): adjust for new behavior * style(fmt): rustfmt
2023-06-14fix(plugins): allow loading relative urls (#2539)Aram Drevekenin
* fix(plugins): allow loading relative urls * style(fmt): rustfmt
2023-06-13fix(logs): suppress debug logs when not debugging (#2532)Aram Drevekenin
* fix(logs): suppress debug logs when not debugging * fix(tests): add debug flag to constructor
2023-06-13fix(plugins): only listen to hd if a plugin is subscribed to hd events (#2529)Aram Drevekenin
* fix(plugins): only listen to hd if a plugin is subscribed to hd events * style(fmt): rustfmt * fix(tests): give time for fs watcher to do its thing * fix(tests): increase timeout
2023-06-12fix(screen): focus tab as well as pane when launching existing plugin (#2530)Aram Drevekenin
* fix(screen): focus tab as well as pane when launching existing plugin * style(fmt): rustfmt
2023-06-12fix(output): do not hide cursor on a render that does not include visual ↵Aram Drevekenin
assets (#2528) * fix(terminal): do not hide cursor if output-buffer only has non-visual assets * style(fmt): rustfmt
2023-06-09feat(plugins): extensive plugin api (#2516)Aram Drevekenin
* feat(plugins): add our entire API * style(fmt): rustfmt * fix(detach): make it work again
2023-06-07feat(wasm-plugin-system): major overhaul and some goodies (#2510)Aram Drevekenin
* strider resiliency * worker channel prototype * finalized ui * show hide plugin * fs events to plugins * tests for events and new screen instructions * various refactoringz * report plugin errors instead of crashing zellij * fix plugin loading with workers * refactor: move watch filesystem * some fixes and refactoring * refactor(panes): combine pane insertion logic * refactor(screen): launch or focus * refactor(pty): consolidate default shell fetching * refactor: various cleanups * initial refactoring * more initial refactoring * refactor(strider): search * style(fmt): rustfmt * style(pty): cleanup * style(clippy): ok clippy * style(fmt): rustfmt
2023-06-01fix: cwd of newtab action (#2455)XiaoZhang
2023-05-16feat(plugins): Plugin workers and strider (#2449)Aram Drevekenin
* mvp of strider fuzzy find * improve search ui * various refactoringz * moar refactoring * even more refactoring * tests and more refactoring * refactor: remove unused stuff * style(fmt): rustfmt * debug ci * debug ci * correct path for plugin system tests * fix plugin system ci tests * remove debugging statements from test * fix plugin worker persistence * add test for plugin worker persistence * style(fmt): rustfmt * final cleanups * remove outdated comments
2023-05-05Do not unwrap() the sticky bit setting! (#2424)Val Packett
It fails on FreeBSD, making the zellij server quit and the client spin endlessly retrying to connect.
2023-04-28feat(plugins): update and render plugins asynchronously (#2410)Aram Drevekenin
* working-ish minus a few race conditions * relax atomicity * various refactoringz * remove commented out code * clarify some stuffs * refactor(plugins): move PluginMap and friends to a different file * refactor(plugins): move zellij_exports and friends to a different file * style(fmt): rustfmt * fix(e2e): adjust tests for flakiness async loading
2023-04-19feat(plugins): reload plugin at runtime (#2372)Aram Drevekenin
* fix(plugins): proper error when wasm file does not exist * reload working * race condition handling * refactor(plugins): start plugin * refactor(plugins): plugin-loader * refactor(plugins): load/reload plugin * refactor(plugins): apply cached events * fix(plugins): gittery loading * chore(plugins): rename reload-plugin to start-or-reload-plugin * chore(styling): small cleanups * style(fmt): rustfmt * style(fmt): cleanups * style(fmt): cleanups * test(e2e): update snapshots * test(e2e): update snapshots * chore(repo): comment plugin optimization because it doubles the CI time
2023-04-18feat: support default cwd (#2290)Kangaxx-0
* init commit * add default config to kdl file * change the field from `default_cwd` to `override_cwd` * change back to default_cwd * fix test * default cwd works without `default_shell`
2023-04-18feat: Add layout configuration to exclude panes from tab sync (#2314)Theo Salzmann
2023-04-13chore(version): bump development versionAram Drevekenin
2023-04-13fix: do not hold on to router thread handle until server exit (#2328)Thomas Linford
* do not hold on to thread handle until server exit * fix tests
2023-04-05fix(server): set sticky bit on socket files (#2141)Thomas Linford
2023-04-04fix(plugins): prevent Strider from opening double-panes when editing files ↵Aram Drevekenin
(#2346) * fix(plugins): make sure to include client_id when writing input * style(fmt): rustfmt * fix(plugins): do not remove client plugins on detach
2023-04-03fix(layout): pane focus in stack (#2344)Aram Drevekenin
2023-04-03feat(panes): allow defining an expanded stacked pane (#2343)Aram Drevekenin
* feat(panes): allow defining an expanded stacked pane * style(fmt): rustfmt
2023-03-31fix(layouts): focus tab race (#2340)Aram Drevekenin
2023-03-31fix(scrollback-editor): properly invoke editor when command includes spaces ↵Aram Drevekenin
(#2339) * fix(scrollback-editor): properly invoke editor when command includes spaces * style(fmt): srsly clippy?
2023-03-30fix(layouts): nested attribute truncating (#2337)Aram Drevekenin
2023-03-30Add option to hide session name in tab-bar (deriving from #2172) (#2301)Marcel Baur
* feat(tab-bar): add option to hide prefix (#2172) * feat(tab-bar): only hide session_name * fix(snapshots): update snapshots with new config-var naming --------- Co-authored-by: Marcel Baur <marcel@baur.gg>
2023-03-29feat(terminal): cli and bindable action to clear all buffers for a specific ↵Oleks Gnatovskyi
pane (#2239) * fix typo * Add clear screen action * add proper test * added bindable action; remove pointless default impl * add default binding * use imsnif's variant * remove commented example config * remove log line --------- Co-authored-by: Aram Drevekenin <aram@poor.dev>