Compare commits

..

2 Commits

Author SHA1 Message Date
38839408b1 idk 2025-12-13 01:05:06 +00:00
d5f5dd21b0 Treat input thread as the non-blocking it is 2025-12-13 00:55:09 +00:00
3 changed files with 8 additions and 3 deletions

View File

@@ -6,6 +6,10 @@ A TUI IDE.
# TODO
- [ ] Fix problem highlighting selection when line is empty.
- [ ] Add ui api for setting cursor types.
- [ ] Use that api to set cursor for selection/insertion/normal etc properly.
- Sorta unrelated but check kutuwm + kitty problem not keeping cursor mode properly.
- [ ] Add line numbers.
- [ ] Add bg highlight for current line.
- [ ] Make function to get selected text. (selection itself is done)

View File

@@ -327,7 +327,7 @@ void render_editor(Editor *editor) {
cursor.col = editor->position.col + col;
}
if (editor->selection_active &&
global_byte_offset + line_len + 1 >= sel_start &&
global_byte_offset + line_len + 1 > sel_start &&
global_byte_offset + line_len + 1 <= sel_end &&
col < editor->size.col) {
update(editor->position.row + rendered_rows, editor->position.col + col,
@@ -350,7 +350,7 @@ void render_editor(Editor *editor) {
}
uint32_t col = 0;
if (editor->selection_active &&
global_byte_offset + line_len + 1 >= sel_start &&
global_byte_offset + line_len + 1 > sel_start &&
global_byte_offset + line_len + 1 <= sel_end) {
update(editor->position.row + rendered_rows, editor->position.col + col,
" ", 0, 0x555555, 0);

View File

@@ -152,7 +152,8 @@ int main(int argc, char *argv[]) {
std::this_thread::sleep_for(std::chrono::milliseconds(8));
}
input_thread.detach();
if (input_thread.joinable())
input_thread.join();
if (work_thread.joinable())
work_thread.join();