mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 02:37:42 +00:00
![]() This commit cleans up some of the `#ifdef`-ed code smell in `Terminal`, by extending the scroll APIs to take a range of lines as a parameter. This makes it possible to use the same code for `IL`/`DL` as for scrolling. Note that the current scrolling implementation is very naive, and does many insertions/deletions in the middle of arrays, whereas swaps should be enough. This optimization will come in a later commit. The `linefeed` override was removed from `VirtualConsole`. Previously, it exhibited incorrect behavior by moving to column 0. Now that we use the method defined in `Terminal`, code which relied on this behavior stopped working. We go instead go through the TTY layer which handles the various output flags. Passing the input character-by-character seems a bit excessive, so a fix for it will come in another PR. |
||
---|---|---|
.. | ||
Attribute.h | ||
CMakeLists.txt | ||
Color.h | ||
EscapeSequenceParser.cpp | ||
EscapeSequenceParser.h | ||
Line.cpp | ||
Line.h | ||
Position.h | ||
Range.h | ||
StateMachine.txt | ||
Terminal.cpp | ||
Terminal.h | ||
TerminalWidget.cpp | ||
TerminalWidget.h | ||
XtermColors.h |