diff options
author | Daniel Bertalan <dani@danielbertalan.dev> | 2021-06-05 15:11:45 +0200 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2021-06-10 17:18:02 +0200 |
commit | 89843cd6928651171474b4ba486471f46a3bee1b (patch) | |
tree | 9f9296c029dad8c1a8b51d308f7bb2fadb1bbc7c /Kernel/TTY/VirtualConsole.h | |
parent | 7419569a2ba6d5a285293ae59e98a1e38e3c62e3 (diff) | |
download | serenity-89843cd6928651171474b4ba486471f46a3bee1b.zip |
Kernel+LibVT: Implement left-right scrolling
This commit implements the left/right scrolling used in the `ICH`/`DCH`
escape sequences for `VirtualConsole`. This brings us one step closer to
VT420/xterm compatibility.
We can now finally remove the last escape sequence related `ifdef`s.
Diffstat (limited to 'Kernel/TTY/VirtualConsole.h')
-rw-r--r-- | Kernel/TTY/VirtualConsole.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/Kernel/TTY/VirtualConsole.h b/Kernel/TTY/VirtualConsole.h index a25c5a3731..4acd096f05 100644 --- a/Kernel/TTY/VirtualConsole.h +++ b/Kernel/TTY/VirtualConsole.h @@ -39,11 +39,10 @@ private: virtual void scroll_up(u16 region_top, u16 region_bottom, size_t count) override; virtual void scroll_down(u16 region_top, u16 region_bottom, size_t count) override; + virtual void scroll_left(u16 row, u16 column, size_t count) override; + virtual void scroll_right(u16 row, u16 column, size_t count) override; virtual void put_character_at(unsigned row, unsigned column, u32 ch) override; virtual void clear_in_line(u16 row, u16 first_column, u16 last_column) override; - - virtual void ICH(Parameters) override; - virtual void DCH(Parameters) override; }; class VirtualConsole final : public TTY @@ -138,6 +137,8 @@ private: void scroll_down(u16 region_top, u16 region_bottom, size_t count); void scroll_up(u16 region_top, u16 region_bottom, size_t count); + void scroll_left(u16 row, u16 column, size_t count); + void scroll_right(u16 row, u16 column, size_t count); void clear_line(size_t index) { clear_in_line(index, 0, m_console_impl.columns() - 1); |