1. 22 Feb, 2016 1 commit
    • Thomas Huth's avatar
      menu_entry: Disable cursor during update_screen() · 625934ec
      Thomas Huth authored
      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: 's avatarThomas Huth <thuth@redhat.com>
      625934ec
  2. 13 Jan, 2016 1 commit
  3. 30 Dec, 2015 1 commit
  4. 21 Sep, 2014 3 commits
  5. 26 Oct, 2013 3 commits
  6. 20 Oct, 2013 2 commits
  7. 07 Jun, 2013 1 commit
  8. 14 May, 2013 1 commit
  9. 05 May, 2013 1 commit
  10. 04 May, 2013 1 commit
  11. 08 Apr, 2013 1 commit
  12. 03 Apr, 2013 1 commit
  13. 26 Feb, 2013 2 commits
  14. 16 Jan, 2013 1 commit
  15. 31 Dec, 2012 1 commit
    • Colin Watson's avatar
      Remove several trivially-unnecessary uses of nested functions. · 5c67ea6c
      Colin Watson authored
      * grub-core/commands/i386/pc/sendkey.c
      (grub_cmd_sendkey: find_key_code, find_ascii_code): Make static
      instead of nested.
      * grub-core/commands/legacycfg.c (legacy_file: getline): Likewise.
      Rename to ...
      (legacy_file_getline): ... this.
      * grub-core/commands/loadenv.c (grub_cmd_load_env: set_var):
      Likewise.
      * grub-core/kern/corecmd.c (grub_core_cmd_set: print_env): Likewise.
      * grub-core/kern/fs.c (grub_fs_probe: dummy_func): Likewise.  Rename
      to ...
      (probe_dummy_iter): ... this.
      * grub-core/kern/i386/coreboot/mmap.c
      (grub_linuxbios_table_iterate: check_signature): Likewise.
      * grub-core/kern/parser.c (grub_parser_split_cmdline:
      check_varstate): Likewise.  Mark inline.
      * grub-core/lib/arg.c (find_short: fnd_short): Likewise.  Pass
      an additional parameter.
      (find_long: fnd_long): Likewise.  Pass two additional parameters.
      * grub-core/lib/crc.c (init_crc32c_table: reflect): Likewise.
      * grub-core/lib/crc64.c (init_crc64_table: reflect): Likewise.
      * grub-core/lib/ieee1275/cmos.c (grub_cmos_find_port: hook):
      Likewise.  Rename to ...
      (grub_cmos_find_port_iter): ... this.
      * grub-core/lib/ieee1275/datetime.c (find_rtc: hook): Likewise.
      Rename to ...
      (find_rtc_iter): ... this.
      
      * grub-core/normal/menu_entry.c (run): Fold nested editor_getsource
      function directly into the function body, since it is only called
      once.
      5c67ea6c
  16. 02 Jun, 2012 3 commits
  17. 07 Apr, 2012 1 commit
  18. 27 Mar, 2012 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Fix tab and wide character handling in editor and menu. · e1bd676b
      Vladimir 'phcoder' Serbinenko authored
      	* grub-core/normal/charset.c (grub_unicode_aglomerate_comb): Don't
      	agglomerate control characters with combining marks.
      	(bidi_line_wrap): Allow break on tab.
      	(grub_unicode_get_comb_start): New function.
      	* grub-core/normal/menu_entry.c: Restructure to handle wide characters
      	and tab correctly.
      	* grub-core/normal/menu_text.c (print_entry): Replace \n, \r, \b and \e
      	with a space.
      	* grub-core/normal/term.c (print_ucs4_terminal): New argument
      	fixed_tab_size. All users updated.
      	* include/grub/term.h (GRUB_TERM_TAB_WIDTH): New const.
      	(grub_term_getcharwidth): Handle \t.
      	* include/grub/unicode.h (grub_unicode_glyph_dup): Fix allocation
      	and copy.
      e1bd676b
  19. 05 Mar, 2012 1 commit
  20. 30 Nov, 2011 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Add missing const qualifiers. · bf3a3857
      Vladimir 'phcoder' Serbinenko authored
      	* grub-core/commands/i386/pc/sendkey.c (keysym): Add missing const.
      	* grub-core/commands/lspci.c (grub_pci_classname): Likewise.
      	* grub-core/commands/menuentry.c (hotkey_aliases): Likewise.
      	* grub-core/disk/lvm.c (grub_lvm_getvalue): Likewise.
      	(grub_lvm_check_flag): Likewise.
      	* grub-core/efiemu/i386/coredetect.c
      	(grub_efiemu_get_default_core_name): Likewise
      	* grub-core/efiemu/main.c (grub_efiemu_autocore): Likewise.
      	* grub-core/fs/hfsplus.c (grub_hfsplus_catkey_internal): Likewise.
      	* grub-core/fs/ntfs.c (fixup): Likewise.
      	* grub-core/fs/xfs.c (grub_xfs_iterate_dir): Likewise.
      	* grub-core/fs/zfs/zfs.c (decomp_entry): Likewise.
      	(fzap_lookup): Likewise.
      	(zap_lookup): Likewise.
      	* grub-core/gnulib/regcomp.c (init_dfa): Likewise.
      	* grub-core/lib/legacy_parse.c (check_option): Likewise.
      	* grub-core/lib/posix_wrap/langinfo.h (nl_langinfo): Likewise.
      	* grub-core/loader/i386/bsd.c (grub_bsd_add_meta): Likewise.
      	(grub_freebsd_add_meta_module): Likewise.
      	(grub_cmd_freebsd_module): Likewise.
      	* grub-core/loader/i386/xnu.c (tbl_alias): Likewise.
      	* grub-core/loader/xnu.c (grub_xnu_register_memory): Likewise.
      	(grub_xnu_writetree_get_size): Likewise.
      	(grub_xnu_writetree_toheap_real): Likewise.
      	(grub_xnu_find_key): Likewise.
      	(grub_xnu_create_key): Likewise.
      	(grub_xnu_create_value): Likewise.
      	(grub_xnu_register_memory): Likewise.
      	(grub_xnu_check_os_bundle_required): Likewise.
      	(grub_xnu_scan_dir_for_kexts): Likewise.
      	(grub_xnu_load_kext_from_dir): Likewise.
      	* grub-core/normal/color.c (color_list): Likewise.
      	* grub-core/normal/completion.c (current_word): Likewise.
      	* grub-core/normal/menu_entry.c (insert_string): Likewise.
      	* grub-core/term/serial.c (grub_serial_find): Likewise.
      	* grub-core/term/tparm.c (grub_terminfo_tparm): Likewise.
      	* include/grub/efiemu/efiemu.h (grub_efiemu_get_default_core_name):
      	Likewise.
      	* include/grub/i386/bsd.h (grub_bsd_add_meta): Likewise.
      	(grub_freebsd_add_meta_module): Likewise.
      	* include/grub/lib/arg.h (grub_arg_option): Likewise.
      	* include/grub/net.h (grub_net_card_driver): Likewise.
      	(grub_net_card): Likewise.
      	(grub_net_app_protocol): Likewise.
      	* include/grub/parttool.h (grub_parttool_argdesc): Likewise.
      	* include/grub/serial.h (grub_serial_find): Likewise.
      	* include/grub/tparm.h (grub_terminfo_tparm): Likewise.
      	* include/grub/xnu.h (grub_xnu_create_key): Likewise.
      	(grub_xnu_create_value): Likewise.
      	(grub_xnu_find_key): Likewise.
      	(grub_xnu_scan_dir_for_kexts): Likewise.
      	(grub_xnu_load_kext_from_dir): Likewise.
      
      	* include/grub/zfs/zio_checksum.h (zio_checksum_t): Moved from here ...
      	* grub-core/fs/zfs/zfs.c (zio_checksum_t): ...here.
      	* include/grub/zfs/zio_checksum.h (zio_checksum_info):
      	Moved from here ...
      	* grub-core/fs/zfs/zfs.c (zio_checksum_info): ... here. Added missing const.
      bf3a3857
  21. 10 Apr, 2011 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Dynamically count the number of lines for the lower banner. · 8b8a81fa
      Vladimir 'phcoder' Serbinenko authored
      	* grub-core/normal/menu_entry.c (per_term_screen): New member
      	num_entries.
      	(print_down): Use num_entries.
      	(update_screen): Likewise.
      	(grub_menu_entry_run): Set num_entries.
      	* grub-core/normal/menu_text.c (menu_viewer_data): New member
      	num_entries.
      	(grub_print_message_indented): Move real part to ...
      	(grub_print_message_indented_real): ... here. Additional argument
      	dry_run.
      	(draw_border): Additional argument num_entries.
      	(print_message): Additional argument dry_run.
      	(print_entries): Receive menu viewer data.
      	(grub_menu_init_page): New argment num_entries.
      	(menu_text_set_chosen_entry): Use num_entries.
      	(grub_menu_try_text): Likewise.
      	* grub-core/normal/term.c (print_ucs4_terminal): New argument dry_run.
      	All users updated.
      	(grub_ucs4_count_lines): New function.
      	* include/grub/term.h (grub_term_cursor_x): Moved from here ..
      	* grub-core/normal/menu_text.c (grub_term_cursor_x): ... to here.
      	* include/grub/term.h (GRUB_TERM_MESSAGE_HEIGHT): Removed.
      	(grub_term_border_height): Likewise.
      	(grub_term_num_entries): Likewise.
      8b8a81fa
  22. 08 Apr, 2011 1 commit
  23. 01 Apr, 2011 1 commit
  24. 23 Mar, 2011 1 commit
  25. 11 Jan, 2011 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Submenu default support. · dcb883b1
      Vladimir 'phcoder' Serbinenko authored
      	* grub-core/normal/menu.c (grub_menu_execute_entry): New parameter
      	auto_boot. All users updated.
      	Declared static.
      	Handle chosen and default with submenus.
      	(grub_menu_execute_with_fallback): Declared static.
      	Don't notify failure if autobooted. Upper level does it.
      	(menuentry_eq): New function.
      	(get_entry_number): Use menuentry_eq.
      	(show_menu): New parameter "autobooted". All users updated.
      	(grub_show_menu): Likewise.
      	* include/grub/normal.h (grub_show_menu): Likewise.
      	* include/grub/menu.h (grub_menu_execute_entry): Removed.
      	(grub_menu_execute_with_fallback): Likewise.
      dcb883b1
  26. 08 Dec, 2010 1 commit
  27. 18 Nov, 2010 1 commit
  28. 21 Sep, 2010 2 commits
    • Colin Watson's avatar
      df7769d8
    • Vladimir 'phcoder' Serbinenko's avatar
      Support submenus. · fc55cc4c
      Vladimir 'phcoder' Serbinenko authored
      	* grub-core/commands/menuentry.c (grub_normal_add_menu_entry): New
      	parameter submenu. All users updated.
      	* grub-core/normal/main.c (free_menu): Rename to ...
      	(grub_normal_free_menu): ... this. Made global.
      	* grub-core/normal/menu.c (grub_menu_execute_entry): Open new context
      	if requested.
      	* grub-core/normal/menu_entry.c (screen): New field submenu.
      	(make_screen): Set submenu.
      	(run): Open new context if requested.
      	* include/grub/menu.h (grub_menu_entry): New field submenu.
      	* include/grub/normal.h (grub_normal_free_menu): New proto.
      fc55cc4c
  29. 20 Sep, 2010 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Pause the execution (10s max) if any errors are displayed so the user · 38c259a7
      Vladimir 'phcoder' Serbinenko authored
      	has a chance to see them.
      
      	* grub-core/kern/err.c (grub_err_printed_errors): New variable.
      	(grub_print_error): Increment grub_err_printed_errors.
      	* grub-core/normal/menu.c (grub_menu_execute_entry): Pause the
      	execution if any errors were displayed.
      	(show_menu): Remove old code for pause.
      	* grub-core/normal/menu_entry.c (run): Likewise.
      	* grub-core/normal/term.c (grub_normal_char_counter): Removed. All
      	users updated.
      	(grub_normal_get_char_counter): Likewise.
      	* include/grub/err.h (grub_err_printed_errors): New external variable.
      	* include/grub/normal.h (grub_normal_get_char_counter): Removed.
      38c259a7
  30. 06 May, 2010 1 commit
  31. 04 May, 2010 1 commit