summaryrefslogtreecommitdiffstats
path: root/input
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2012-09-25 03:24:38 +0200
committerwm4 <wm4@nowhere>2012-10-12 10:10:32 +0200
commite79efd28f8f3f539ca976733ff4209e372dcb5ed (patch)
tree885b7f85ed7d1b074de5042b38624fdeb516b54b /input
parent88849fd1d4056bc22305cc4433dc56360dd6d0e9 (diff)
downloadmpv-e79efd28f8f3f539ca976733ff4209e372dcb5ed.tar.bz2
mpv-e79efd28f8f3f539ca976733ff4209e372dcb5ed.tar.xz
commands: more user-control whether a command shows OSD bars/messages
The "no-osd" prefix was introduced earlier to disable OSD selectively based on the key binding. Extend this, and allow the user to force display of an OSD bar ("osd-bar"), OSD message ("osd-msg") or both ("osd-msg-bar"). This changes mainly how property setting functions behave. The default behavior is still the same.
Diffstat (limited to 'input')
-rw-r--r--input/input.c8
-rw-r--r--input/input.h6
2 files changed, 12 insertions, 2 deletions
diff --git a/input/input.c b/input/input.c
index a1ab808125..3cae41bfff 100644
--- a/input/input.c
+++ b/input/input.c
@@ -852,6 +852,14 @@ mp_cmd_t *mp_input_parse_cmd(bstr str)
if (eat_token(&str, "no-osd")) {
on_osd = MP_ON_OSD_NO;
+ } else if (eat_token(&str, "osd-bar")) {
+ on_osd = MP_ON_OSD_BAR;
+ } else if (eat_token(&str, "osd-msg")) {
+ on_osd = MP_ON_OSD_MSG;
+ } else if (eat_token(&str, "osd-msg-bar")) {
+ on_osd = MP_ON_OSD_MSG | MP_ON_OSD_BAR;
+ } else if (eat_token(&str, "osd-auto")) {
+ // default
}
int cmd_idx = 0;
diff --git a/input/input.h b/input/input.h
index e4eb0a8d32..a523020f43 100644
--- a/input/input.h
+++ b/input/input.h
@@ -97,8 +97,10 @@ enum mp_command_type {
#define MP_INPUT_RELEASE_ALL -5
enum mp_on_osd {
- MP_ON_OSD_NO = 0,
- MP_ON_OSD_AUTO,
+ MP_ON_OSD_NO = 0, // prefer not using OSD
+ MP_ON_OSD_AUTO = 1, // use default behavior of the specific command
+ MP_ON_OSD_BAR = 2, // force a bar, if applicable
+ MP_ON_OSD_MSG = 4, // force a message, if applicable
};
enum mp_input_section_flags {