Commit graph

210 commits

Author SHA1 Message Date
henil
af95b3ff9a Update references in src/ 2021-02-10 12:22:15 +05:30
denis
354316d20c chore: formatting 2021-01-29 07:25:58 +02:00
denis
be9a059116 wip: moved stuff from main into common 2021-01-29 07:21:33 +02:00
denis
6a3481f54f Merge branch 'main' into restructure 2021-01-29 06:24:59 +02:00
Aram Drevekenin
dd56deb2d2
feat(statusbar): max status bar height (#156) 2021-01-28 18:29:44 +01:00
henil
a39eb66be8 Use alternate buffer 2021-01-25 23:50:07 +05:30
denis
454de6c52c wip: oops shouldn't forget that 2021-01-24 18:40:14 +02:00
denis
b23ef332c7 wip: restructing in progress, to prep for server-client 2021-01-24 18:38:46 +02:00
denis
bd1e3d2d7b Merge branch 'main' into server-client 2021-01-22 08:24:56 +02:00
Henil Dedania
c32b837df7
feat(plugin): Search in root folder for plugins and layout files 2021-01-21 12:04:29 +05:30
Aram Drevekenin
decc38232b
fix(main): do not hang on exit (#150) 2021-01-20 19:25:35 +01:00
Kyle
09b1e03843 Add some message types for server-client comms 2021-01-17 19:15:32 +00:00
Brooks J Rady
209cce96a5 Finish implementing default layouts 2021-01-12 04:34:19 +00:00
Brooks J Rady
01df6ed568 Added a get_help function to the plugin API 2021-01-11 19:55:29 +00:00
Brooks J Rady
efcd36a52c Added the set_selectable plugin API function 2021-01-11 07:33:35 +00:00
Brooks J Rady
7e308515e5 Add a plugin callback for global keypresses 2021-01-10 23:02:41 +00:00
Brooks J Rady
70e16f80b1 Merge in changes from main and fix a clippy lint 2021-01-07 16:21:38 +00:00
Brooks J Rady
58a2fc1656 Finished plugin system! (Added file opening) 2021-01-07 15:23:54 +00:00
Brooks J Rady
7c785d4fe7 Fix the plugin splitting bugs 2021-01-07 14:06:09 +00:00
Brooks J Rady
adfe7fd513 Make it possible to cleanly close plugins 2021-01-07 13:26:27 +00:00
Brooks J Rady
54f6e09511 Working input response! 2021-01-07 12:49:23 +00:00
Brooks J Rady
6e19401200 Add LTO and use a termion fork with serde support 2021-01-07 12:20:52 +00:00
Brooks J Rady
0858341b7f Loop through input keys 2021-01-07 09:49:49 +00:00
Henil Dedania
0994c8abcd
feat(completions): Add shell completions files (#128)
* Add shell completions and output files to `assets/completions`

* Rename files and struct name

* Update tests to take into account new changes
2021-01-07 15:14:28 +05:30
Brooks J Rady
01eaedcd37 Parse bytes into keys with Termion 2021-01-07 09:39:16 +00:00
Brooks J Rady
1fa23e6fa4 Get clipped, fool 2021-01-06 19:34:18 +00:00
Brooks J Rady
4a176669fa A module rename to please clippy 2021-01-06 17:46:50 +00:00
Brooks J Rady
698bcf83fc Warnings purged and some FIXME's addressed 2021-01-06 17:23:00 +00:00
Brooks J Rady
fc2205c415 The RawFd has been slain... 2021-01-06 16:41:02 +00:00
Brooks J Rady
a6ba792e89 Also borken 2021-01-06 12:53:12 +00:00
Brooks J Rady
e19f674a21 Update message 2021-01-05 23:05:34 +00:00
Brooks J Rady
eb0f3b0285 Very borken 2021-01-05 22:41:23 +00:00
Brooks J Rady
6f1546a5cb Keeping track of multiple plugins 2021-01-05 13:33:23 +00:00
Brooks J Rady
3695907097 Merge things 2020-12-30 11:25:55 +00:00
Brooks Rady
22890c53fe
fix(plugins): fully Working WebAssembly Loading! (#125)
* Fully Working WebAssembly Loading!

* Move some wasm code to it's own module
2020-12-30 09:59:32 +01:00
Doron Tsur
f196726dab
fix(infra): make panes BTreeMap value Pane trait in preparation for the status bar (#124) 2020-12-30 09:54:31 +01:00
Brooks J Rady
b0c7259266 It's now possible to load WASM files from layouts! 2020-12-29 16:28:34 +00:00
Brooks J Rady
0049b26bf8 Move some wasm code to it's own module 2020-12-29 12:49:35 +00:00
Brooks J Rady
db4d6b6eb5 Fully Working WebAssembly Loading! 2020-12-29 10:24:22 +00:00
Denis Maximov
d47904ea5b
feature(infrastructure): tabs (#89)
* wip: tabs, just outlining stuff, for now it is a mess

* wip: tabs, just outlining stuff, for now it is a mess

* wip: formatting

* wip: some moving around

* wip: not sure why those things are not imported

* wip: cleaning up a bit

* wip: doesn't render when new tab is created?

* wip: doesnt re-render when a new tab is spawned for now

* wip: tabs now are a BTreeMap and we can switch between them in both directions

* wip: I think that should also be here

* wip: cleanup

* Spawn a new terminal simultaneously with a new tab

* Ensure proper Opening and Closing of tabs

* cleanup

* more cleanup

* tests(snapshots): add 'loading' snapshot to each scenario

* fix(tests): update snapshots

* Add tests for tabs implementation

* wip: added tests, moved tab related stuff to a separate file

* wip: var name change, removed unused imports

* chore: fromatting

* wip: tests are you ok?

* Remove next_tab_index field

* clean close_tab() logic in screen.render()

* wip: more tests added, review changes covered

* chore: a programmer and a formatter walk into a bar....

* style(screen): update description comment

* docs(tab): add comment description

Co-authored-by: denis <denis@airheadventures.com>
Co-authored-by: Kunal Mohan <kunalmohan99@gmail.com>
Co-authored-by: Aram Drevekenin <aram@poor.dev>
Co-authored-by: Kunal Mohan <44079328+kunalmohan@users.noreply.github.com>
2020-12-18 11:11:25 +01:00
Kunal Mohan
92d1bcff4c
feat(infrastructure): introduce ErrorContext for tracking errors across threads (#83)
* Implement ErrorContext for tracking errors across threads

* reorder Instruction and ErrorContext

* Add ContextType, AppContext, ScreenContext, PtyContext

* Use ArrayVec in ErrorContext

* increase MAX_THREAD_CALL_STACK to 6

* Custom implement Debug for ErrorContext ad ContextType and color output

* Use os_input instead of println!()

* Use array instead of ArrayVec and some cleanup

* Introduce SenderWithContext

* Keep arrayvec at v0.5.1
2020-12-09 18:01:26 +01:00
Denis Maximov
b7b3ff74cf
feat(rect): directional move focus #55 (#78)
* feat: directional move focus #55

* wip: refactored match into if let

* wip: basic tests

* feat: move to most overlapping pane tests

* fix: formatting

* wip: Moved the definitions to the Rect trait

* formatting
2020-12-04 09:59:06 +01:00
Kunal Mohan
56c53d2487
feat(infra): add custom panic hook. Print backtrace and thread, error info on panic. (#75)
* Add custom panic hook. Print backtrace and thread, error info on panic.

* use sync_channel and SyncSender

* nit fixes and cleanup

* disable custom panic hook while running tests

* make separate errors.rs file and address other review comments

* improve panic message

* debug: does increasing time between snapshots make tests pass? (this is temporary)

* fix(tests): suspend before sending quit command

* fix(tests): add missing use

* style(format): commas are important apparently

* fix(tests): can we get away with reducing the QUIT suspense time?

* fix(tests): can we get away with 50?

Co-authored-by: Aram Drevekenin <aram@poor.dev>
2020-12-03 15:35:16 +01:00
Brooks Rady
c3fa9fb40e
fix(threads): a race condition, build-times, and warnings (#79)
* Fix a race condition, build-times, and warnings

* Yeah, yeah... I know

* style(code): add comment to explain race condition

Co-authored-by: Aram Drevekenin <aram@poor.dev>
2020-12-02 15:03:46 +01:00
Aram Drevekenin
c47fed927e
fic(compatibility): htop scrolling issues (#77)
* fix(compatibility): scrolling inside scroll region with 'M' esc dispatch

* style(format): make rustfmt happy

* fix(tests): send proper data

* fix(logs): do not crash if log file doesn't exist
2020-11-30 09:40:24 +01:00
Roee Shapira
9ad7b8a35e
chore(infra): added clippy check. (#65)
* Added clippy check.

* Changed step name.

* Used the suggested ci config.

* Some more clippy fixes.

* Some more clippy fixes.

* More clippy fixes.

* Removed allow annotations.

* Minor lint edit.

* More clippy fixes.

* Ran cargo fmt.

* More clippy fixes.

* More clippy fixes.

* More clippy fixes.

* More clippy fixes.

* More clippy fixes.

* More clippy fixes.

* Code review edits.

* Code review edits.

* Code review edits.

* CI update.

* CI update.

* CI update.

* Added clippy warn so wip won't fail ci.

* Cargo fmt.
2020-11-28 20:02:05 +01:00
Brooks J Rady
3c43675fb1 Got roasted by cargo fmt 2020-11-25 21:39:18 +00:00
Brooks J Rady
aea41d3d50 Don't crash (always?) 2020-11-25 21:18:13 +00:00
Brooks J Rady
7026c6c484 Don't crash (sometimes) 2020-11-25 20:35:26 +00:00
Brooks J Rady
06b5ef8c26 Well, it compiles... 2020-11-25 19:39:45 +00:00