Aram Drevekenin
073d39705e
Terminal compatibility: various behaviour fixes ( #486 )
...
* fix(compatibility): various behaviour fixes
* style(fmt): rustfmt
* style(fmt): thanks clippy for teaching me about matches!
2021-05-11 11:06:19 +02:00
Dante Pippi
9c09cf1658
New behavior for h and l
...
New behavior for h and l, will change tabs if there are no available
panes in the direction.
cargo clippy
Ensuring atomicity for the MoveFocusOrTab
- Blocking the input thread for the action MoveFocusOrTab
- Using "unreachable" macro in match arm to make it clear that the
directions Up and Down should not be used with the action MoveFocusOrTab
Adding tests
2021-05-09 17:05:14 -03:00
Kyle Sutherland-Cash
9a3e8bcb84
First round of merging against server-client and color stuff
2021-05-08 04:32:31 -07:00
Aram Drevekenin
632a7a3209
fix(compatibility): upgrade vte to support csi subparameters ( #469 )
...
* fix(compatibility): upgrade vte to support csi subparameters
* style(fmt): rustfmt and clippy
2021-05-07 16:03:45 +02:00
Kunal Mohan
d5433f8f89
Merge pull request #223 from zellij-org/isolate-pty
...
Psuedo Client-Server model
2021-05-06 22:11:07 +05:30
Aram Drevekenin
837cb8d15a
fix(compatibility): pass vttest 8 ( #461 )
...
* fix(compatibility): pass vttest 8
* style(comment): remove unused
* style(grid): sometimes it's just easier to do what clippy wants...
2021-05-05 17:09:24 +02:00
Kunal Mohan
c1dd2c588e
Fix after rebase
2021-05-04 20:48:28 +05:30
Kunal Mohan
d33106431d
Fix after rebase
2021-05-04 20:48:17 +05:30
Kunal Mohan
c6f93ba0d2
use better names for senders, receivers and threads
2021-05-04 20:48:17 +05:30
Kunal Mohan
42079f8d04
Refactor CommandIsExecuting to have a single variant
2021-05-04 20:48:16 +05:30
Kunal Mohan
b7aa3fc21a
Use interprocess crate for IPC
2021-05-04 20:48:16 +05:30
Kunal Mohan
246899a1dd
Remove ErrorContext from IpcSender and nit fixes
2021-05-04 20:48:15 +05:30
Kunal Mohan
fedb588330
Fix after rebase
2021-05-04 20:48:15 +05:30
Kunal Mohan
30d0ec2a40
fix terminal window resize tests by restricting lifetime of locks
2021-05-04 20:48:15 +05:30
Kunal Mohan
2a648187fc
Fix after rebase
2021-05-04 20:48:15 +05:30
Kunal Mohan
223ee743e1
Move screen and plugins to client side.
...
Remove AppInstruction enum
spawn pty thread, screen thread and plugin thread on demand
2021-05-04 20:48:15 +05:30
Kunal Mohan
ea732166e3
client side threads should send messages directly to server and router threads should do the actual routing
2021-05-04 20:48:14 +05:30
Kunal Mohan
4f088e8185
split start into start_server and start_client
2021-05-04 20:48:14 +05:30
Kunal Mohan
813547483f
Rename notify_server to connect_to_server
2021-05-04 20:47:52 +05:30
Kunal Mohan
e30ec5745e
Add router thread on server side as well
2021-05-04 20:47:52 +05:30
Kunal Mohan
90982c3e47
Some documentation an ClientOsApi stuff
2021-05-04 20:47:52 +05:30
Kunal Mohan
fe8fb79da0
a probable fix for tests
2021-05-04 20:47:52 +05:30
Kunal Mohan
af445394c0
minor fix while opening new tab
2021-05-04 20:47:52 +05:30
Kunal Mohan
965cc71918
Hide IpcChannel entirely behind OsApi
2021-05-04 20:47:52 +05:30
Kunal Mohan
bc2345c413
Hide server-side Ipc channels creation behind OsApis and some documentation fixes
2021-05-04 20:47:52 +05:30
Kunal Mohan
3ef2715827
increase snapshot time
2021-05-04 20:47:51 +05:30
Kunal Mohan
5d06a49f8a
fix fmt errors
2021-05-04 20:47:51 +05:30
Kunal Mohan
fd1debaa79
Fix after rebase
2021-05-04 20:47:51 +05:30
Kunal Mohan
2ab18244f7
fix tests
2021-05-04 20:47:51 +05:30
Kunal Mohan
0d814ebcde
Divide OsApi into ClientOsApi and ServerOsApi and move calls to os thread
2021-05-04 20:47:51 +05:30
Kunal Mohan
d8986351ed
fix testing for pseudo client-server model
2021-05-04 20:47:50 +05:30
Aram Drevekenin
1f88b342e2
fix(colors): stabilize colors ( #453 )
...
* fix(colors): stabilize colors
* style(fmt): rustfmt
2021-05-04 16:06:55 +02:00
Aram Drevekenin
845211c1ee
Terminal compatibility: Pass vttest 2 and 3 ( #447 )
...
* fix(compatibility): pass vttest 2+3
* style(fmt): rustfmt
* style(comment): remove unused
* docs(changelog): update change
2021-05-03 19:11:31 +02:00
denis
452940fb65
Merge branch 'main' into x-colors
2021-05-02 11:59:20 +03:00
Yutaka Kamei
168deabea7
Load config before start()
...
Previously, a config file was loaded within `start()`, and if the config
file is invalid, Zellij was supposed to show a user what's wrong with
it. However, since `start()` starts setting up its terminal with an
alternative screen buffer, neither standard output nor standard error
could display such an error.
This change intends to address this issue by making Zellij load a config
file before `start()`.
In addition, the patch also includes some refactorings:
* Redefine `from_cli_config` with `TryFrom`, which was introduced in
Rust 1.34
* Remove conditional declaration `cfg(not(test))` because `start()` now
receive a `Config` as the third argument
* Introduce [`tempfile`](https://crates.io/crates/tempfile ) in order to
run tests with actual files
* Typo?: "Deserialisation" -> "Deserialization"
2021-05-02 06:18:40 +09:00
denis
f85822972a
chore: cleanup, fix: the tests finally pass
2021-05-01 14:44:43 +03:00
Aram Drevekenin
cedd830a2e
Terminal: pass vttest 1 ( #408 )
...
* fix(compatibility): pass vttest 1
* fix(tests): move unit tests to a separate file
* style(fmt): rustfmt
* fix(grid): correct comment
* style(fmt): rustfmt
2021-04-29 15:25:08 +02:00
Dante Pippi
068136b523
Fixing snapshots
2021-04-22 21:28:38 -03:00
Dante Pippi
4f7ad31cf6
Changing tests to test the new behavior
...
Previous behavior was to go to the largest overlap. Now it should go to
the most recently used pane. Used cargo insta review to update the
snapshots.
2021-04-22 21:07:55 -03:00
Aram Drevekenin
169e25af66
fix(ui): draw ui properly on terminal start ( #323 )
...
* fix(ui): draw ui properly on terminal start
* style(fmt): rustfmt
2021-04-22 20:55:23 +02:00
Brooks Rady
19fc0496a3
feat(actions): allow scrolling by full pages
...
PR #298
2021-04-22 00:25:43 +01:00
Aram Drevekenin
e55dfc53e0
fix(ui): do not open new pane on the status bar ( #314 )
2021-04-21 19:24:51 +02:00
Hongjie Zhai
4590fb474e
cargo fmt
2021-04-21 15:31:04 +09:00
Hongjie Zhai
9d8fbd2424
add tests
2021-04-21 15:30:02 +09:00
Aram Drevekenin
ceb2ebbd2b
fix(terminal): persiste vte state ( #269 )
...
* fix(terminal): persist vte state
* style(fmt): rustfmt
2021-04-14 13:52:45 +02:00
Brooks J Rady
413a24b77f
fix(bug): remove buggy expansion boundaries
2021-04-14 11:01:28 +01:00
Aram Drevekenin
1739f370f9
* fix(ui): react to terminal window size changes (SIGWINCH) ( #245 )
...
* fix(ui): react to terminal window size changes (SIGWINCH)
* style(fmt): rustfmt
* style(format): remove some warnings
* style(fmt): rustfmt
2021-04-01 17:38:13 +02:00
Aram Drevekenin
46c9802f6f
Performance: only render panes that should be updated ( #234 )
...
* fix(performance): bring back should_render
* style(fmt): rustfmt
2021-03-16 16:54:07 +01:00
Aram Drevekenin
8d0ff0fe40
feat(input): new shortcuts and ui ( #220 )
...
* feat(statusbar): new shortcuts
* feat(input): new shortcuts and ui
* style(fmt): rustfmt
2021-03-11 16:03:28 +01:00
Aram Drevekenin
7b69fcb8e0
Make fullscreen panes not override the status bar and strider ( #209 )
...
* work
* feat(tab): expansion boundary
* fix(layout): add expansion boundary to default layout
* style(fmt): rustfmt
* style(fmt): remove unnecessary comment
2021-02-24 18:00:00 +01:00