grub-devel.gnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] menu_entry: Disable cursor during update_screen()
@ 2016-01-29 14:26 Thomas Huth
  2016-01-30  7:33 ` Andrei Borzenkov
  2016-02-22  7:00 ` Andrei Borzenkov
  0 siblings, 2 replies; 7+ messages in thread
From: Thomas Huth @ 2016-01-29 14:26 UTC (permalink / raw)
  To: grub-devel

When running grub in a VGA console of a KVM pseries guest on PowerPC,
you can see the cursor sweeping over the whole line when entering a
character in editor mode. This is visible because grub always refreshes
the whole line when entering a character in editor mode, and drawing
characters is quite a slow operation with the firmware used for the
powerpc pseries guests (SLOF).
To avoid this ugliness, the cursor should be disabled when refreshing
the screen contents during update_screen().

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 grub-core/normal/menu_entry.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/grub-core/normal/menu_entry.c b/grub-core/normal/menu_entry.c
index 62c7e16..68359eb 100644
--- a/grub-core/normal/menu_entry.c
+++ b/grub-core/normal/menu_entry.c
@@ -250,6 +250,8 @@ update_screen (struct screen *screen, struct per_term_screen *term_screen,
       mode = ALL_LINES;
     }
 
+  grub_term_setcursor (term_screen->term, 0);
+
   if (mode != NO_LINE)
     {
       /* Draw lines. This code is tricky, because this must calculate logical
@@ -357,6 +359,8 @@ update_screen (struct screen *screen, struct per_term_screen *term_screen,
 
     }
 
+  grub_term_setcursor (term_screen->term, 1);
+
   grub_term_refresh (term_screen->term);
 }
 
-- 
1.8.3.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-02-22  7:00 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-29 14:26 [PATCH] menu_entry: Disable cursor during update_screen() Thomas Huth
2016-01-30  7:33 ` Andrei Borzenkov
2016-01-31 15:02   ` Thomas Huth
2016-02-13  7:41     ` Andrei Borzenkov
2016-02-15 10:23       ` Thomas Huth
2016-02-12  8:19   ` Thomas Huth
2016-02-22  7:00 ` Andrei Borzenkov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).