grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] 5/5 Graphical menu (gfxmenu)


From: Vesa Jääskeläinen
Subject: Re: [PATCH] 5/5 Graphical menu (gfxmenu)
Date: Sat, 31 Jan 2009 23:39:44 +0200
User-agent: Thunderbird 2.0.0.19 (Windows/20081209)

Hi,

As this patch is quite large and I am going go to sleep soon so I only
comment your message on this run...

Colin D Bennett wrote:
> This long-awaited patch adds graphical menu support to GRUB 2.  It is
> largely the result of my work during the Google Summer of Code 2008.

And thanks for it!

> There are still a few important things that need to be done on gfxmenu
> before it is completely ready for end-users (off the top of my head):
> 
> - Need a good way to switch themes at runtime.  I want to add a popup
>   menu that lists the available themes and lets the user choose one.
>   (Currently the keys 1, 2, 3, and 4 are hardcoded to switch between my
>   sample themes...)

I think switching would need to validate new theme before taking it to
into use. When it is ok then it is safe to switch...

> - gfxmenu interacts badly with gfxterm.  Running commands from the
>   terminal withing gfxmenu that switch the video mode
>   ('videotest basic', for instance) cause a crash when the command
>   returns.  I think this has something to do with the interaction of
>   video mode-switching and the GRUB output terminal.

I have thought about this for some years... but still haven't
implemented it.

Basically it should work something like this:

state = grub_video_save_state()

change mode or what ever.

grub_video_restore_state(state);

State would have two parts. One is generic part that tells what video
driver to load and then second part is driver specific so it can restore
old video mode perhaps with same palette if in indexed color mode... but
contents of display does not need to saved. If there is no need to
perform any change on restore (eg. state matches) then no action is taken.

This should work also with text mode, so that at start before changing
video mode grub_video_save_state() would be called which records text
mdoe. And if graphical mode fails, then it would call restore with this
state. Now if there was graphical mode before this it would restore to
old working graphical mode.

> The default theme is set in grub.cfg like so:
> 
>   set theme="/boot/grub/themes/proto/theme.txt"

I think it would be wise to pick some other theme extension that .txt.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]