forked from NotAShelf/beer
render: frame-paced presentation with per-row damage and blink
Signed-off-by: NotAShelf <raf@notashelf.dev> Change-Id: I4e925b4d1d904d9592060e968d84ec906a6a6964
This commit is contained in:
parent
7887420139
commit
f1c8271d31
4 changed files with 274 additions and 102 deletions
|
|
@ -473,11 +473,14 @@ impl Perform for Term {
|
|||
}),
|
||||
'q' if intermediates.first() == Some(&b'>') => self.report_version(),
|
||||
'q' if intermediates.first() == Some(&b' ') => {
|
||||
self.grid.set_cursor_shape(match raw(params, 0) {
|
||||
let code = raw(params, 0);
|
||||
self.grid.set_cursor_shape(match code {
|
||||
3 | 4 => CursorShape::Underline,
|
||||
5 | 6 => CursorShape::Beam,
|
||||
_ => CursorShape::Block,
|
||||
});
|
||||
// Even codes are steady; 0/1 and other odd codes blink.
|
||||
self.grid.set_cursor_blink(code == 0 || code % 2 == 1);
|
||||
}
|
||||
'p' if intermediates.contains(&b'$') => self.report_mode(params, private),
|
||||
'n' => self.device_status(params),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue