mirror of
https://git.savannah.gnu.org/git/gnuboot.git
synced 2025-01-03 23:07:39 +01:00
62fa042a17
mitigate missing characters in unifont for border/arrow characters. this saves space because now it is no longer necessary to add a custom font the background added has the libreboot logo on it, and it's 10kb in size unlike the old gnulove background that was hundreds of KB
90 lines
3.2 KiB
Diff
90 lines
3.2 KiB
Diff
From 2abd6ada3fbd6a782346354b8fe47477463162fb Mon Sep 17 00:00:00 2001
|
|
From: Leah Rowe <leah@libreboot.org>
|
|
Date: Sun, 31 Oct 2021 03:47:05 +0000
|
|
Subject: [PATCH 1/2] mitigate grub's missing characters for borders/arrow
|
|
characters
|
|
|
|
This cleans up the display on the main screen in GRUB.
|
|
|
|
Just don't draw a border, at all.
|
|
---
|
|
grub-core/normal/menu_text.c | 49 ++----------------------------------
|
|
1 file changed, 2 insertions(+), 47 deletions(-)
|
|
|
|
diff --git a/grub-core/normal/menu_text.c b/grub-core/normal/menu_text.c
|
|
index 18240e76c..4d6282b43 100644
|
|
--- a/grub-core/normal/menu_text.c
|
|
+++ b/grub-core/normal/menu_text.c
|
|
@@ -108,47 +108,6 @@ grub_print_message_indented (const char *msg, int margin_left, int margin_right,
|
|
grub_print_message_indented_real (msg, margin_left, margin_right, term, 0);
|
|
}
|
|
|
|
-static void
|
|
-draw_border (struct grub_term_output *term, const struct grub_term_screen_geometry *geo)
|
|
-{
|
|
- int i;
|
|
-
|
|
- grub_term_setcolorstate (term, GRUB_TERM_COLOR_NORMAL);
|
|
-
|
|
- grub_term_gotoxy (term, (struct grub_term_coordinate) { geo->first_entry_x - 1,
|
|
- geo->first_entry_y - 1 });
|
|
- grub_putcode (GRUB_UNICODE_CORNER_UL, term);
|
|
- for (i = 0; i < geo->entry_width + 1; i++)
|
|
- grub_putcode (GRUB_UNICODE_HLINE, term);
|
|
- grub_putcode (GRUB_UNICODE_CORNER_UR, term);
|
|
-
|
|
- for (i = 0; i < geo->num_entries; i++)
|
|
- {
|
|
- grub_term_gotoxy (term, (struct grub_term_coordinate) { geo->first_entry_x - 1,
|
|
- geo->first_entry_y + i });
|
|
- grub_putcode (GRUB_UNICODE_VLINE, term);
|
|
- grub_term_gotoxy (term,
|
|
- (struct grub_term_coordinate) { geo->first_entry_x + geo->entry_width + 1,
|
|
- geo->first_entry_y + i });
|
|
- grub_putcode (GRUB_UNICODE_VLINE, term);
|
|
- }
|
|
-
|
|
- grub_term_gotoxy (term,
|
|
- (struct grub_term_coordinate) { geo->first_entry_x - 1,
|
|
- geo->first_entry_y - 1 + geo->num_entries + 1 });
|
|
- grub_putcode (GRUB_UNICODE_CORNER_LL, term);
|
|
- for (i = 0; i < geo->entry_width + 1; i++)
|
|
- grub_putcode (GRUB_UNICODE_HLINE, term);
|
|
- grub_putcode (GRUB_UNICODE_CORNER_LR, term);
|
|
-
|
|
- grub_term_setcolorstate (term, GRUB_TERM_COLOR_NORMAL);
|
|
-
|
|
- grub_term_gotoxy (term,
|
|
- (struct grub_term_coordinate) { geo->first_entry_x - 1,
|
|
- (geo->first_entry_y - 1 + geo->num_entries
|
|
- + GRUB_TERM_MARGIN + 1) });
|
|
-}
|
|
-
|
|
static int
|
|
print_message (int nested, int edit, struct grub_term_output *term, int dry_run)
|
|
{
|
|
@@ -167,10 +126,8 @@ command-line or ESC to discard edits and return to the GRUB menu."),
|
|
{
|
|
char *msg_translated;
|
|
|
|
- msg_translated = grub_xasprintf (_("Use the %C and %C keys to select which "
|
|
- "entry is highlighted."),
|
|
- GRUB_UNICODE_UPARROW,
|
|
- GRUB_UNICODE_DOWNARROW);
|
|
+ msg_translated = grub_xasprintf (_("Use the arrow keys to select which "
|
|
+ "entry is highlighted."));
|
|
if (!msg_translated)
|
|
return 0;
|
|
ret += grub_print_message_indented_real (msg_translated, STANDARD_MARGIN,
|
|
@@ -410,8 +367,6 @@ grub_menu_init_page (int nested, int edit,
|
|
|
|
grub_term_normal_color = grub_color_menu_normal;
|
|
grub_term_highlight_color = grub_color_menu_highlight;
|
|
- if (geo->border)
|
|
- draw_border (term, geo);
|
|
grub_term_normal_color = old_color_normal;
|
|
grub_term_highlight_color = old_color_highlight;
|
|
geo->timeout_y = geo->first_entry_y + geo->num_entries
|
|
--
|
|
2.25.1
|
|
|