Commit graph

44 commits

Author SHA1 Message Date
Kunal Mohan
2038947a14 Big refactor: separate crates for client, server and utilities 2021-05-16 21:41:56 +05:30
Thomas Linford
28212f5430
handle error on termios initialization (#511) 2021-05-16 17:00:22 +01:00
Kunal Mohan
050d846b5e clean and exit on window close 2021-05-15 22:18:29 +05:30
Kunal Mohan
c5675e965b Use ClientToServerMsg and ServerToClientMsg for IPC 2021-05-15 22:14:34 +05:30
Kunal Mohan
f2c43ac577 Fix memory overflow error and add panic hook for server 2021-05-15 22:14:34 +05:30
Kunal Mohan
0d792e26f2 Switch to multiprocess model: Not looking good 2021-05-15 22:14:34 +05:30
Kunal Mohan
2446aec82c hotfix(logging): fix atomic_create_file and make set_permissions() return an error 2021-05-07 15:42:00 +05:30
Kunal Mohan
7982636741 explicitly set file and directory permissions 2021-05-06 22:01:27 +05:30
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
ea552d71e4 Introduce IpcReceiverWIthContext and move ipc stuff to common/ipc.rs
Fall back to /tmp/zellij-{uid} directory if runtime_dir is not available.
Use serialize_into() to avoid Vec allocation.
And some cleanup
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
913697b144 Place socket file in runtime directory or cache directory and use names crate for socket file name 2021-05-04 20:48:17 +05:30
Kunal Mohan
93956bdcca use bincode::deserialize_from() to prevent data loss. 2021-05-04 20:48:17 +05:30
Kunal Mohan
da9b6fd607 use BufRead and BufWrite with sockets 2021-05-04 20:48:17 +05:30
Kunal Mohan
3f70c585c2 nit fixes 2021-05-04 20:48:16 +05:30
Kunal Mohan
1eb732773a use Uuid to generate unique server socket names 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
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
965cc71918 Hide IpcChannel entirely behind OsApi 2021-05-04 20:47:52 +05:30
Kunal Mohan
660434be06 documentation and nit fix 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
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
denis
70d8be0741 wip: remove the commands that are called only on the client 2021-05-04 20:47:50 +05:30
denis
627e6b3672 wip: working on osapi message variants 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
a-kenji
f97c3ae3a1 Make Xrdb Loading More Forgiving
Attempt at fixing  #434.

The `hex_to_rgb` function propagates the Option now.
If it is None, it tries to load the default Palette now.
2021-05-03 18:10:02 +02:00
denis
f85822972a chore: cleanup, fix: the tests finally pass 2021-05-01 14:44:43 +03:00
Brooks J Rady
6f4dcfbf65 fix(clippy): get ci passing again 2021-04-13 18:14:13 +01:00
Aram Drevekenin
bb87cbdd28
fix(terminal): do not hang app if terminal refuses to quit (#255) 2021-04-06 11:09:13 +02: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
Brooks J Rady
b6f945da35 Wrap up the plugin system refactor, running everything through update() 2021-03-25 17:22:10 +00:00
a-kenji
b9eb6c5b99 allow(clippy): single_match for signal handler
Should get more matches in the future.
2021-02-18 21:53:09 +01:00
categorille
6e5607ba26
docs: first documentation step (#185)
* added some documentation to the input module

* added a bunch of documentation already, doing this non-linearly

* added more comments

* forgot cargo ftm again oop

* PR change requests applied, some forgotten/imcomplete doc added
2021-02-17 15:55:09 +01:00
denis
b23ef332c7 wip: restructing in progress, to prep for server-client 2021-01-24 18:38:46 +02:00
Renamed from src/os_input_output.rs (Browse further)