diff options
| author | Richard Qin <richard.qin.x@gmail.com> | 2026-04-11 06:08:38 +0800 |
|---|---|---|
| committer | Richard Qin <richard.qin.x@gmail.com> | 2026-04-11 06:08:38 +0800 |
| commit | 3fbda8903b809e50a8e96acd66b2b80b54e1b6bf (patch) | |
| tree | 57c0edba54be82467403142d09a59e0d17ce6c23 /ricochet/src/tui/terminal.cc | |
| parent | 12188f045a3f6ccce4359d946167066e3b584939 (diff) | |
| download | rcc-project-3fbda8903b809e50a8e96acd66b2b80b54e1b6bf.tar.gz rcc-project-3fbda8903b809e50a8e96acd66b2b80b54e1b6bf.tar.xz | |
feat: implement URL navigation and input handling in browser TUI
Diffstat (limited to 'ricochet/src/tui/terminal.cc')
| -rw-r--r-- | ricochet/src/tui/terminal.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/ricochet/src/tui/terminal.cc b/ricochet/src/tui/terminal.cc index 75c6c1f..9e78a02 100644 --- a/ricochet/src/tui/terminal.cc +++ b/ricochet/src/tui/terminal.cc @@ -74,4 +74,16 @@ std::pair<std::size_t, std::size_t> Terminal::get_size() // NOLINT(readability-c return { static_cast<std::size_t>( w.ws_col ), static_cast<std::size_t>( w.ws_row ) }; } +void Terminal::move_cursor( std::size_t row, std::size_t col ) const // NOLINT +{ + // ANSI: \x1b[H move to 1,1; \x1b[row;colH move to specified row and column + std::cout << "\x1b[" << row << ";" << col << "H"; +} + +void Terminal::show_cursor( bool visible ) const // NOLINT +{ + // \x1b[?25h show cursor, \x1b[?25l hide cursor + std::cout << ( visible ? "\x1b[?25h" : "\x1b[?25l" ); +} + } // namespace ricochet::tui
\ No newline at end of file |
