]> git.ipfire.org Git - thirdparty/ipxe.git/commitdiff
[vesafb] Set "magic" colour to transparent when a background picture is used
authorMichael Brown <mcb30@ipxe.org>
Mon, 9 Dec 2013 15:32:42 +0000 (15:32 +0000)
committerMichael Brown <mcb30@ipxe.org>
Mon, 9 Dec 2013 15:34:14 +0000 (15:34 +0000)
Use the magic colour facility to cause the user interface background
to become transparent when we have a background picture.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/arch/i386/interface/pcbios/vesafb.c

index 8fc6f3d41edc0f8432f13073cd7f601324eeed38..557f9017bab9176c8d775f2c9ce4ce794930c9c5 100644 (file)
@@ -31,6 +31,7 @@ FILE_LICENCE ( GPL2_OR_LATER );
 #include <realmode.h>
 #include <ipxe/console.h>
 #include <ipxe/io.h>
+#include <ipxe/ansicol.h>
 #include <ipxe/fbcon.h>
 #include <ipxe/vesafb.h>
 #include <config/console.h>
@@ -462,6 +463,7 @@ static int vesafb_configure ( struct console_configuration *config ) {
        if ( ! vesafb_console.disabled ) {
                vesafb_fini();
                bios_console.disabled &= ~CONSOLE_DISABLED_OUTPUT;
+               ansicol_reset_magic();
        }
        vesafb_console.disabled = CONSOLE_DISABLED;
 
@@ -480,6 +482,10 @@ static int vesafb_configure ( struct console_configuration *config ) {
        vesafb_console.disabled = 0;
        bios_console.disabled |= CONSOLE_DISABLED_OUTPUT;
 
+       /* Set magic colour to transparent if we have a background picture */
+       if ( config->pixbuf )
+               ansicol_set_magic_transparent();
+
        return 0;
 }