Benedikt Peetz
a3b49b17f4
Fix(handlers::main): Close ci after a command input
2023-07-26 22:08:07 +02:00
Benedikt Peetz
0288bdb0ad
Feat(ui): Add status panel, which shows command statuses and errors
2023-07-26 22:08:00 +02:00
Benedikt Peetz
1fe04ca5c6
Fix(lua_command::handle): Move lua_command handler to separate thread
...
This makes it possible to have lua code execute commands and receive
their output value, without risking a deadlock.
2023-07-26 22:06:42 +02:00
Benedikt Peetz
c7a4d5a8ab
Refactor(treewide): Remove the repl, reuse of e. handling is hard
...
The event handling is deeply ingrained in the ui code, the commands are
focused around the ui code, in short splitting of the event handling and
command system from the ui is intentionally hard and in my opinion not
really worth it right now.
2023-07-26 22:06:40 +02:00
Benedikt Peetz
189ae509f8
Fix(app::command_interface): Provide pre-generated file, to check syntax
2023-07-26 22:06:33 +02:00
Benedikt Peetz
ebb16a20de
Feat(treewide): Add a feature based layout and repl subcommand
...
Compiling the whole tui stack, just to debug the lua command line seems
counterproductive to me. This allows to just compile the needed parts
for a basic lua repl.
As of yet the repl is just a mock-up, as the event handling can, as of
right now, not easily be separated from the tui.
To activate specific features add specify the on the cargo command line
like this:
```
cargo run --features "cli tui"
```
or add them to the `default` feature set in the `Cargo.toml`.
2023-07-26 22:04:42 +02:00
antifallobst
993ef6af89
Fix(insert_modes): added the `Setup` insert mode as a workaround to log in until command based login is implemented
2023-07-22 16:28:47 +02:00
antifallobst
d447eb2312
Feat(App): implemented vim like modes (Normal/Insert)
2023-07-22 16:00:52 +02:00
antifallobst
4856ecc582
Fix(event_handlers): removed outdated reference to the ci_output module
2023-07-21 21:34:46 +02:00
Benedikt Peetz
a6d176b6e9
Fix(event_handlers/ci_output): Remove because not needed anymore
2023-07-20 21:50:30 +02:00
Benedikt Peetz
20c751fd7f
Fix(treewide): Update codebase to new lua_macros api
2023-07-20 21:49:56 +02:00
Benedikt Peetz
2a2c173683
Fix(command_interface): Use comments to generate the help function
...
The generation part is yet to be done, but the comments itself are
supposed to be the way of documentation.
2023-07-19 06:32:19 +02:00
Benedikt Peetz
fbd1672d03
Style(treewide): Reorder imports and modules
2023-07-19 06:28:48 +02:00
Benedikt Peetz
734328787e
Fix(ui_widgets): Add missing lifetimes
2023-07-18 08:12:33 +02:00
Benedikt Peetz
14333944dc
Fix(handles): Add command handling over the internal event stream
2023-07-18 08:11:21 +02:00
Benedikt Peetz
a413171ffe
Refactor(transmitter): Go back to plain tx,rx channels
2023-07-18 08:07:21 +02:00
Benedikt Peetz
c3a2b2d566
Fix(lua): Switch to mlua library, as it's better than rlua
2023-07-17 07:27:51 +02:00
Benedikt Peetz
866ec7c277
Refactor(ci_command_handling): Move to the event handlers
2023-07-17 00:17:53 +02:00
Benedikt Peetz
49818e0bfe
Refactor(app): Add a transmitter
2023-07-17 00:16:47 +02:00
Benedikt Peetz
ba225e29df
Fix(treewide): Use the new lua_macros macros
2023-07-16 14:19:50 +02:00
Benedikt Peetz
8f9a2a3f22
Refactor(ui): Split into multiple files
2023-07-15 12:29:35 +02:00
antifallobst
dfeac4662d
Refactor(Events): Changed the `Event` type from a struct to an enum
2023-07-14 00:06:10 +02:00
antifallobst
dd3c765ea2
Refactor(Commands): Moved high level command execution function out of app struct.
...
This refactor was done to prevent borrow checker issues, with the lua bindings
2023-07-13 23:40:17 +02:00
antifallobst
529b869e80
Feat(Commands): Started actual implementation of commands
...
List of added commands:
- Exit
- CommandLineShow
- CommandLineHide
- CyclePlanes
- CyclePlanesRev
- RoomMessageSend
2023-07-13 23:17:35 +02:00
antifallobst
33948164c4
Merge: command-backend -> master
2023-07-13 18:41:08 +02:00
Benedikt Peetz
327450c64b
Feat(command_interface): Add basic lua support
2023-07-12 21:48:51 +02:00
Benedikt Peetz
ef5afcda02
Refactor(events): Split up event handling into multiple files
2023-07-12 21:35:46 +02:00
antifallobst
b0c09f9c65
Feat(CommandBackend): Implemented the basic structure of the command handling backend
2023-07-10 22:58:07 +02:00
antifallobst
a30229b763
Fix(treewide): Replaced needless expect statements
2023-07-10 22:10:54 +02:00
antifallobst
ce59c504bd
Fix(UI): Removed unneeded mut statements
2023-07-10 21:28:37 +02:00
Benedikt Peetz
20be391b9e
Style(treewide): Remove unneeded imports
2023-07-10 21:02:01 +02:00
antifallobst
200b9143b3
feature (ui): added a cli panel to contoll the UI similar to what you have when hitting colon in vim
2023-07-10 00:10:51 +02:00
antifallobst
8d6e7c976e
feature (ui): implemented reverse plane cycling using <Shift>+<Tab> as requested in #5
2023-07-09 23:04:59 +02:00
antifallobst
7347d0c4f1
refactor (events): switched back from tui_textarea input events to raw crossterm events
2023-07-09 22:51:57 +02:00
antifallobst
1fa35adae7
fix (ui): fixed rooms scroll out of bounds error and added more detail to 'not supported message like event' view in timeline
2023-07-09 22:05:48 +02:00
Benedikt Peetz
35225a14db
Style(treewide): Format all files with rustfmt
2023-07-09 10:09:50 +02:00
antifallobst
5611d8e385
feature (ui - room info): added basic infos (name & encryption status) to the main ui's 'room info' panel
2023-07-08 23:37:10 +02:00
antifallobst
98f7e806de
feature: (room timeline): Changed timeline view to a scrollable list / Made single messages/events selectable / Implemented Message sending
2023-07-08 23:09:53 +02:00
antifallobst
658f05b8d3
feature (ui - rooms / events): implemented a rooms list area in the UI and live timeline updates on room timeline sync events
2023-07-08 14:45:08 +02:00
antifallobst
f8bf6ee07d
feature (status - rooms): Implemented a timeline event caching layer
2023-07-07 00:52:16 +02:00
antifallobst
1eb04dd23a
feature (UI - main): started work on timeline view implementation
2023-07-06 20:47:06 +02:00
antifallobst
a7e11c6ac0
fix (status): updating status from 'app.init_account()'
2023-07-06 17:34:55 +02:00
antifallobst
b1c0007098
feature (events): added a matrix event listener that writes to the global event stream
2023-07-06 15:13:41 +02:00
antifallobst
dfc87ff937
refactor (architecture): implemented an event based architecture
2023-07-04 18:32:57 +02:00
antifallobst
9fbf112baa
refactor (logger): switched to cli_log
2023-07-01 12:44:11 +02:00
antifallobst
7bd1990eb3
feature (logging): added a logging backend and spreaded a few info log calls over the codebase
2023-06-29 20:17:54 +02:00
antifallobst
7a3bb91ba4
feature (UI - main): built a simple not yet very efficient rendering infrastructure that is capable of cycling through the planes
2023-06-29 16:33:40 +02:00
antifallobst
af7c79ac75
feature (UI): made message compose in main ui a TextArea
2023-06-29 15:13:11 +02:00
antifallobst
82bd751ac8
fix (UI): fixed a bug that caused a panic when cancelling a login process.
2023-06-29 13:30:45 +02:00
antifallobst
aee5b77722
feature (UI): added sample text to homeserver input field in login screen
2023-06-29 13:29:18 +02:00