/* Color settings. */
grub_video_color_t fg_color;
grub_video_color_t bg_color;
+ grub_video_color_t bg_color_display;
/* Text buffer for virtual screen. Contains (columns * rows) number
of entries. */
grub_video_set_active_render_target (GRUB_VIDEO_RENDER_TARGET_DISPLAY);
+ virtual_screen.bg_color_display = grub_video_map_rgba(0, 0, 0, 0);
+
/* Clear out text buffer. */
for (i = 0; i < virtual_screen.columns * virtual_screen.rows; i++)
clear_char (&(virtual_screen.text_buffer[i]));
/* If bitmap is smaller than requested blit area, use background
color. */
- color = virtual_screen.bg_color;
+ color = virtual_screen.bg_color_display;
/* Fill right side of the bitmap if needed. */
if ((x + width >= bitmap_width) && (y < bitmap_height))
else
{
/* Render background layer. */
- color = virtual_screen.bg_color;
+ color = virtual_screen.bg_color_display;
grub_video_fill_rect (color, x, y, width, height);
/* Render text layer as replaced (to get texts background color). */
/* Clear text layer. */
grub_video_set_active_render_target (text_layer);
color = virtual_screen.bg_color;
- grub_video_fill_rect (color, 0, 0, mode_info.width, mode_info.height);
+ grub_video_fill_rect (color, 0, 0, virtual_screen.width,
+ virtual_screen.height);
grub_video_set_active_render_target (GRUB_VIDEO_RENDER_TARGET_DISPLAY);
/* Mark virtual screen to be redrawn. */