Commit Graph

8 Commits

Author SHA1 Message Date
225368280a feat(layouts): add WIP layout implementations 2024-11-09 04:47:08 +01:00
ba01bf00bb mod(pane) example layout pane has top and bottom empty row
Fix corresponding RawText line control (i.e. last line and changes to
the window size in regards to the current line).
2024-11-09 01:52:37 +01:00
9d711ea047 mod(benchmark): correct size and provide documentation 2024-11-09 01:33:06 +01:00
d9bcbcec7e feat(RawText): simple pager for a static file name
Layout is a simple pane without any restrictions, which should be
implemented next to see if the interfaces are stable and usable enough.
As for example the interface for `Widget.content()` has changed to
return a `[]u8` and not a `*std.ArrayList`.
2024-11-07 21:28:52 +01:00
9b165e8f81 add/mod the following features
- split structure for better inclusions
- create PlainRenderer to render contents to the terminal
- simplify events
- clearify what structs are created on the heap and which are on the stack
- quit event is now emitted from the main event loop and not the input loop (see helper function `App.quit`)
- rename several variables and/or functions for easier understanding
- introduce `App.interrupt` to stop the input thread and start a new sub TUI which takes over the entire screen (i.e. 'hx', 'nvim', etc.)
2024-11-06 15:20:34 +01:00
9ddbb19336 add: signal handling WINCH, user input thread with waiting blocking 2024-11-06 01:38:55 +01:00
14aab9ef50 mod(tui): create own terminal interface framework 2024-11-04 22:27:45 +01:00
0330b3a2f5 add: layout and widget dynamic dispatch with interface definitions 2024-11-02 17:52:44 +01:00