Opened 12 years ago

Closed 11 years ago

#10581 closed Developer Task (Won't Fix)

New customizable OSD menu, with editor and hot-key shortcuts

Reported by: Jim Stichnoth Owned by:
Priority: minor Milestone: 0.27
Component: MythTV - General Version: Master Head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

MythTV 0.22 introduced a customizable OSD menu, in which the user could choose which items appeared on the OSD menu (though not the order). MythTV 0.24 reorganized the OSD menu to be hierarchical with greatly expanded functionality, but removed customizability as a side effect.

This patch adds a new, flat, customizable OSD menu for the TV Playback context. It allows the user to select their favorite actions from among the existing OSD menu items, and collect them into a flat top-level menu. This menu is displayed via the HOTMENU key binding.

The first 10 items on the hot menu have hot-key accelerators via the keypresses "0" through "9". In a sense, this gives the user 10 additional "virtual buttons" on a remote control, i.e. HOTMENU+0, HOTMENU+1, ..., HOTMENU+9.

When the hot menu is active, the user can reorder the items and delete items. Pressing the HOTMENU key brings up a menu that lets the user move the highlighted item up one position, down one position, to the top, or to the bottom, or to remove the item from the hot menu.

To add a new item to the hot menu, the user navigates through the regular OSD menu, highlights the desired action, and presses the HOTMENU key. Not all OSD menu items are available for adding to the hot menu, particularly items that are dependent on the actual recording, e.g. selection of specific audio or subtitle tracks.

The last item in the hot menu is a hard-coded link to the regular OSD menu. It cannot be deleted or reordered.

The hot menu configuration is stored in the HotMenuActions? setting in the DB Settings table, as an ordered, comma-delimited list of action strings. As such, it does not require a schema update.

This feature is also quite usable for remote controls with a very small number of buttons. The user can map the remote control's menu button to the HOTMENU action in the TV Playback context (in addition to it being mapped to the MENU action in the Global context). The menu button will then bring up the hot menu for the commonly used items, with hard-coded access to the regular OSD menu as the last item in the hot menu.

Caveats/limitations:

  1. As noted above, not all regular OSD items are available as hot menu items. This is not really a technical limitation, rather an attempt to avoid surprises to the user. Restrictions may be lifted on a case-by-case basis.
  1. OSD submenus are also not available. Technically, they could be made available, but it's hard to make a "Back" action return to the hot menu when necessary, leading to a rough user experience.
  1. It would be nice (and technically easy) to include keybinding actions and jumppoint actions in the hot menu, with some extra work in the Edit Keys setup page.
  1. While the TV Playback context has the richest set of available actions, it might also be nice to have a hot menu in other contexts. It might also be nice to have variations on the hot menu that depend on aspects of playback, such as playing a recording versus a video versus a DVD/BD versus Live TV.

Attachments (2)

hotmenu_v1.patch (20.6 KB) - added by Jim Stichnoth 12 years ago.
hotmenu_v2.patch (20.8 KB) - added by Jim Stichnoth 11 years ago.

Download all attachments as: .zip

Change History (4)

Changed 12 years ago by Jim Stichnoth

Attachment: hotmenu_v1.patch added

comment:1 Changed 11 years ago by Kenni Lund [kenni a kelu dot dk]

Milestone: 0.260.27

Changed 11 years ago by Jim Stichnoth

Attachment: hotmenu_v2.patch added

comment:2 Changed 11 years ago by Jim Stichnoth

Resolution: Won't Fix
Status: newclosed

This is superseded by #11533, which allows a customizable menu but not the online editing capability nor the numeric hot-key accelerators.

Note: See TracTickets for help on using tickets.