On Thu, Jul 24, 2008 at 02:13:31PM -0700, Colin D Bennett wrote:
> On Thu, 24 Jul 2008 18:18:40 +0200
> Robert Millan <[EMAIL PROTECTED]> wrote:
>
> > Why does gfxterm make a distinction between foreground color and
> > cursor color? Do we really want this?
> >
> > Currently, the variable-based hooks for changing colors have no
> > effect in cursor color because of this.
> >
> > How about supressing separate handling of cursor color, and simply
> > use the foreground color to draw it?
> >
> > Or maybe it'd be better to have setcolor() set cursor color
> > implicitly?
>
> I think it would probably be fine to simply use the foreground color as
> the cursor color.
Well, it took me a while but I finally got a minute to do this. Here's the
patch.
--
Robert Millan
The DRM opt-in fallacy: "Your data belongs to us. We will decide when (and
how) you may access your data; but nobody's threatening your freedom: we
still allow you to remove your data and not access it at all."
2008-08-18 Robert Millan <[EMAIL PROTECTED]>
* term/gfxterm.c (DEFAULT_CURSOR_COLOR): Remove.
(struct grub_virtual_screen): Remove `cursor_color'.
(grub_virtual_screen_setup): Remove `virtual_screen.cursor_color'
initialization.
(write_cursor): Use `virtual_screen.fg_color' to draw cursor.
Index: term/gfxterm.c
===================================================================
--- term/gfxterm.c (revision 1820)
+++ term/gfxterm.c (working copy)
@@ -42,7 +42,6 @@
#define DEFAULT_STANDARD_COLOR 0x07
#define DEFAULT_NORMAL_COLOR 0x07
#define DEFAULT_HIGHLIGHT_COLOR 0x70
-#define DEFAULT_CURSOR_COLOR 0x07
struct grub_dirty_region
{
@@ -100,7 +99,6 @@ struct grub_virtual_screen
/* Color settings. */
grub_video_color_t fg_color;
grub_video_color_t bg_color;
- grub_video_color_t cursor_color;
/* Text buffer for virtual screen. Contains (columns * rows) number
of entries. */
@@ -219,8 +217,6 @@ grub_virtual_screen_setup (unsigned int
set_term_color (virtual_screen.term_color);
- virtual_screen.cursor_color = grub_video_map_color (DEFAULT_CURSOR_COLOR);
-
grub_video_set_active_render_target (GRUB_VIDEO_RENDER_TARGET_DISPLAY);
return grub_errno;
@@ -709,7 +705,7 @@ write_cursor (void)
width = virtual_screen.char_width;
height = 2;
- color = virtual_screen.cursor_color;
+ color = virtual_screen.fg_color;
/* Render cursor to text layer. */
grub_video_set_active_render_target (text_layer);
_______________________________________________
Grub-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/grub-devel