@@ -47,8 +47,8 @@ pub struct VgaConsole {
4747impl VgaConsole {
4848 /// White on Black
4949 const DEFAULT_ATTR : Attr = Attr :: new (
50- TextForegroundColour :: LIGHT_GRAY ,
51- TextBackgroundColour :: BLACK ,
50+ TextForegroundColour :: LightGray ,
51+ TextBackgroundColour :: Black ,
5252 false ,
5353 ) ;
5454
@@ -127,8 +127,8 @@ struct ConsoleInner {
127127
128128impl ConsoleInner {
129129 const DEFAULT_ATTR : Attr = Attr :: new (
130- TextForegroundColour :: LIGHT_GRAY ,
131- TextBackgroundColour :: BLACK ,
130+ TextForegroundColour :: LightGray ,
131+ TextBackgroundColour :: Black ,
132132 false ,
133133 ) ;
134134
@@ -239,13 +239,9 @@ impl ConsoleInner {
239239 let offset = ( ( row * self . width ) + col) * 2 ;
240240 unsafe { core:: ptr:: write_volatile ( self . addr . offset ( offset) , glyph) } ;
241241 let attr = if self . reverse {
242- let new_fg = self . attr . bg ( ) . as_u8 ( ) ;
243- let new_bg = self . attr . fg ( ) . as_u8 ( ) ;
244- Attr :: new (
245- unsafe { TextForegroundColour :: new_unchecked ( new_fg) } ,
246- unsafe { TextBackgroundColour :: new_unchecked ( new_bg & 0x07 ) } ,
247- false ,
248- )
242+ let new_fg = self . attr . bg ( ) . make_foreground ( ) ;
243+ let new_bg = self . attr . fg ( ) . make_background ( ) ;
244+ Attr :: new ( new_fg, new_bg, false )
249245 } else {
250246 self . attr
251247 } ;
@@ -566,53 +562,53 @@ impl vte::Perform for ConsoleInner {
566562 }
567563 // Foreground
568564 30 => {
569- self . attr . set_fg ( TextForegroundColour :: BLACK ) ;
565+ self . attr . set_fg ( TextForegroundColour :: Black ) ;
570566 }
571567 31 => {
572- self . attr . set_fg ( TextForegroundColour :: RED ) ;
568+ self . attr . set_fg ( TextForegroundColour :: Red ) ;
573569 }
574570 32 => {
575- self . attr . set_fg ( TextForegroundColour :: GREEN ) ;
571+ self . attr . set_fg ( TextForegroundColour :: Green ) ;
576572 }
577573 33 => {
578- self . attr . set_fg ( TextForegroundColour :: BROWN ) ;
574+ self . attr . set_fg ( TextForegroundColour :: Brown ) ;
579575 }
580576 34 => {
581- self . attr . set_fg ( TextForegroundColour :: BLUE ) ;
577+ self . attr . set_fg ( TextForegroundColour :: Blue ) ;
582578 }
583579 35 => {
584- self . attr . set_fg ( TextForegroundColour :: MAGENTA ) ;
580+ self . attr . set_fg ( TextForegroundColour :: Magenta ) ;
585581 }
586582 36 => {
587- self . attr . set_fg ( TextForegroundColour :: CYAN ) ;
583+ self . attr . set_fg ( TextForegroundColour :: Cyan ) ;
588584 }
589585 37 | 39 => {
590- self . attr . set_fg ( TextForegroundColour :: LIGHT_GRAY ) ;
586+ self . attr . set_fg ( TextForegroundColour :: LightGray ) ;
591587 }
592588 // Background
593589 40 => {
594- self . attr . set_bg ( TextBackgroundColour :: BLACK ) ;
590+ self . attr . set_bg ( TextBackgroundColour :: Black ) ;
595591 }
596592 41 => {
597- self . attr . set_bg ( TextBackgroundColour :: RED ) ;
593+ self . attr . set_bg ( TextBackgroundColour :: Red ) ;
598594 }
599595 42 => {
600- self . attr . set_bg ( TextBackgroundColour :: GREEN ) ;
596+ self . attr . set_bg ( TextBackgroundColour :: Green ) ;
601597 }
602598 43 => {
603- self . attr . set_bg ( TextBackgroundColour :: BROWN ) ;
599+ self . attr . set_bg ( TextBackgroundColour :: Brown ) ;
604600 }
605601 44 => {
606- self . attr . set_bg ( TextBackgroundColour :: BLUE ) ;
602+ self . attr . set_bg ( TextBackgroundColour :: Blue ) ;
607603 }
608604 45 => {
609- self . attr . set_bg ( TextBackgroundColour :: MAGENTA ) ;
605+ self . attr . set_bg ( TextBackgroundColour :: Magenta ) ;
610606 }
611607 46 => {
612- self . attr . set_bg ( TextBackgroundColour :: CYAN ) ;
608+ self . attr . set_bg ( TextBackgroundColour :: Cyan ) ;
613609 }
614610 47 | 49 => {
615- self . attr . set_bg ( TextBackgroundColour :: LIGHT_GRAY ) ;
611+ self . attr . set_bg ( TextBackgroundColour :: LightGray ) ;
616612 }
617613 _ => {
618614 // Ignore unknown code
@@ -623,35 +619,7 @@ impl vte::Perform for ConsoleInner {
623619 // last, because they might set the colour first and set the
624620 // bright bit afterwards.
625621 if self . bright {
626- match self . attr . fg ( ) {
627- TextForegroundColour :: BLACK => {
628- self . attr . set_fg ( TextForegroundColour :: DARK_GRAY ) ;
629- }
630- TextForegroundColour :: RED => {
631- self . attr . set_fg ( TextForegroundColour :: LIGHT_RED ) ;
632- }
633- TextForegroundColour :: GREEN => {
634- self . attr . set_fg ( TextForegroundColour :: LIGHT_GREEN ) ;
635- }
636- TextForegroundColour :: BROWN => {
637- self . attr . set_fg ( TextForegroundColour :: YELLOW ) ;
638- }
639- TextForegroundColour :: BLUE => {
640- self . attr . set_fg ( TextForegroundColour :: LIGHT_BLUE ) ;
641- }
642- TextForegroundColour :: MAGENTA => {
643- self . attr . set_fg ( TextForegroundColour :: PINK ) ;
644- }
645- TextForegroundColour :: CYAN => {
646- self . attr . set_fg ( TextForegroundColour :: LIGHT_CYAN ) ;
647- }
648- TextForegroundColour :: LIGHT_GRAY => {
649- self . attr . set_fg ( TextForegroundColour :: WHITE ) ;
650- }
651- _ => {
652- // Do nothing
653- }
654- }
622+ self . attr . set_fg ( self . attr . fg ( ) . brighten ( ) )
655623 }
656624 }
657625 'A' => {
0 commit comments