mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 13:37:44 +00:00
Terminal: optimize repaints a bunch.
We track dirty character cells + pending whole-terminal scrolls. This drastically reduces the number of pixels pushed.
This commit is contained in:
parent
e452303c66
commit
d0137f0e96
3 changed files with 35 additions and 7 deletions
|
@ -41,10 +41,12 @@ private:
|
|||
foreground_color = 7;
|
||||
background_color = 0;
|
||||
bold = false;
|
||||
dirty = true;
|
||||
}
|
||||
unsigned foreground_color : 4;
|
||||
unsigned background_color : 4;
|
||||
bool bold : 1;
|
||||
bool dirty : 1;
|
||||
};
|
||||
|
||||
byte* m_buffer { nullptr };
|
||||
|
@ -80,6 +82,7 @@ private:
|
|||
|
||||
int m_pixel_width { 0 };
|
||||
int m_pixel_height { 0 };
|
||||
int m_rows_to_scroll_backing_store { 0 };
|
||||
|
||||
int m_inset { 2 };
|
||||
int m_line_spacing { 4 };
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue