2009-11-14 Colin D Bennet <colin@gibibit.com>
2009-11-14 Vladimir Serbinenko <phcoder@gmail.com> Support for gfxterm in a window. * include/grub/gfxterm.h: New file. * include/grub/video.h (struct grub_video_rect): New declaration. (grub_video_rect_t): Likewise. * term/gfxterm.c (struct grub_gfxterm_window): New type. (refcount): New variable. (render_target): Likewise. (window): Likewise. (repaint_callback): Likewise. (grub_virtual_screen_setup): Use 'render_target'. (init_window): New function. (grub_gfxterm_init_window): Likewise. (grub_gfxterm_init): Check reference counter. Use init_window. (destroy_window): New function. (grub_gfxterm_destroy_window): Likewise. (grub_gfxterm_fini): Check reference counter. Use destroy_window. (redraw_screen_rect): Restore viewport. Use 'render_target' and 'window'. Call 'repaint_callback'. (write_char): Use 'render_target'. (draw_cursor): Likewise. (scroll_up): Restore viewport. Use 'render_target' and 'window'. Call 'repaint_callback'. (grub_gfxterm_cls): Likewise. (grub_gfxterm_refresh): Use 'window'. (grub_gfxterm_set_repaint_callback): New function. (grub_gfxterm_background_image_cmd): Use 'window'. (grub_gfxterm_get_term): New function. (GRUB_MOD_INIT(term_gfxterm)): Set 'refcount' to 0. Also-By: Vladimir Serbinenko <phcoder@gmail.com>
This commit is contained in:
parent
a9d407a81e
commit
c51a5caeab
4 changed files with 269 additions and 45 deletions
36
ChangeLog.gfxtermwindow
Normal file
36
ChangeLog.gfxtermwindow
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
2009-11-14 Colin D Bennet <colin@gibibit.com>
|
||||
2009-11-14 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
Support for gfxterm in a window.
|
||||
|
||||
* include/grub/gfxterm.h: New file.
|
||||
* include/grub/video.h (struct grub_video_rect): New declaration.
|
||||
(grub_video_rect_t): Likewise.
|
||||
* term/gfxterm.c (struct grub_gfxterm_window): New type.
|
||||
(refcount): New variable.
|
||||
(render_target): Likewise.
|
||||
(window): Likewise.
|
||||
(repaint_callback): Likewise.
|
||||
(grub_virtual_screen_setup): Use 'render_target'.
|
||||
(init_window): New function.
|
||||
(grub_gfxterm_init_window): Likewise.
|
||||
(grub_gfxterm_init): Check reference counter.
|
||||
Use init_window.
|
||||
(destroy_window): New function.
|
||||
(grub_gfxterm_destroy_window): Likewise.
|
||||
(grub_gfxterm_fini): Check reference counter.
|
||||
Use destroy_window.
|
||||
(redraw_screen_rect): Restore viewport.
|
||||
Use 'render_target' and 'window'.
|
||||
Call 'repaint_callback'.
|
||||
(write_char): Use 'render_target'.
|
||||
(draw_cursor): Likewise.
|
||||
(scroll_up): Restore viewport.
|
||||
Use 'render_target' and 'window'.
|
||||
Call 'repaint_callback'.
|
||||
(grub_gfxterm_cls): Likewise.
|
||||
(grub_gfxterm_refresh): Use 'window'.
|
||||
(grub_gfxterm_set_repaint_callback): New function.
|
||||
(grub_gfxterm_background_image_cmd): Use 'window'.
|
||||
(grub_gfxterm_get_term): New function.
|
||||
(GRUB_MOD_INIT(term_gfxterm)): Set 'refcount' to 0.
|
||||
Loading…
Add table
Add a link
Reference in a new issue