SerialConnect: make reverse video work

It's useful to see our openboot boot menu.

I'm not sure what B_NEGATIVE_FACE is meant to do. The be book says
"Characters are drawn in the low color, while the background is drawn in
the high color.", but DrawString does not draw the background, so some
color swapping will still be needed in this case anyway.
This commit is contained in:
Adrien Destugues 2020-07-19 15:02:43 +02:00
parent d74c554ce2
commit 5033d6898f

View File

@ -111,7 +111,7 @@ TermView::Draw(BRect updateRect)
background.alpha = 255;
// Draw the cursor by swapping foreground and background colors
if (isCursor) {
if (isCursor ^ cell.attrs.reverse) {
SetLowColor(foreground);
SetViewColor(foreground);
SetHighColor(background);
@ -135,8 +135,12 @@ TermView::Draw(BRect updateRect)
font.SetFace(B_ITALIC_FACE);
if (cell.attrs.blink) // FIXME make it actually blink
font.SetFace(B_OUTLINED_FACE);
#if 0
// FIXME B_NEGATIVE_FACE isn't actually implemented so we
// instead swap the colors above
if (cell.attrs.reverse)
font.SetFace(B_NEGATIVE_FACE);
#endif
if (cell.attrs.strike)
font.SetFace(B_STRIKEOUT_FACE);