diff options
Diffstat (limited to 'player')
-rw-r--r-- | player/command.c | 3 | ||||
-rw-r--r-- | player/lua.c | 34 | ||||
-rw-r--r-- | player/lua/defaults.lua | 13 | ||||
-rw-r--r-- | player/lua/osc.lua | 2 |
4 files changed, 14 insertions, 38 deletions
diff --git a/player/command.c b/player/command.c index edb1d81d66..742e78ef9e 100644 --- a/player/command.c +++ b/player/command.c @@ -4684,8 +4684,7 @@ int run_command(struct MPContext *mpctx, struct mp_cmd *cmd, struct mpv_node *re } case MP_CMD_ENABLE_INPUT_SECTION: - mp_input_enable_section(mpctx->input, cmd->args[0].v.s, - cmd->args[1].v.i == 1 ? MP_INPUT_EXCLUSIVE : 0); + mp_input_enable_section(mpctx->input, cmd->args[0].v.s, cmd->args[1].v.i); break; case MP_CMD_DISABLE_INPUT_SECTION: diff --git a/player/lua.c b/player/lua.c index 3621e7aee5..cf0c5caa41 100644 --- a/player/lua.c +++ b/player/lua.c @@ -1024,38 +1024,6 @@ static int script_get_time(lua_State *L) return 1; } -static int script_input_enable_section(lua_State *L) -{ - struct MPContext *mpctx = get_mpctx(L); - char *section = (char *)luaL_checkstring(L, 1); - char *sflags = (char *)luaL_optstring(L, 2, ""); - bstr bflags = bstr0(sflags); - int flags = 0; - while (bflags.len) { - bstr val; - bstr_split_tok(bflags, "|", &val, &bflags); - if (bstr_equals0(val, "allow-hide-cursor")) { - flags |= MP_INPUT_ALLOW_HIDE_CURSOR; - } else if (bstr_equals0(val, "allow-vo-dragging")) { - flags |= MP_INPUT_ALLOW_VO_DRAGGING; - } else if (bstr_equals0(val, "exclusive")) { - flags |= MP_INPUT_EXCLUSIVE; - } else { - luaL_error(L, "invalid flag"); - } - } - mp_input_enable_section(mpctx->input, section, flags); - return 0; -} - -static int script_input_disable_section(lua_State *L) -{ - struct MPContext *mpctx = get_mpctx(L); - char *section = (char *)luaL_checkstring(L, 1); - mp_input_disable_section(mpctx->input, section); - return 0; -} - static int script_input_set_section_mouse_area(lua_State *L) { struct MPContext *mpctx = get_mpctx(L); @@ -1301,8 +1269,6 @@ static const struct fn_entry main_fns[] = { FN_ENTRY(get_screen_margins), FN_ENTRY(get_mouse_pos), FN_ENTRY(get_time), - FN_ENTRY(input_enable_section), - FN_ENTRY(input_disable_section), FN_ENTRY(input_set_section_mouse_area), FN_ENTRY(format_time), FN_ENTRY(enable_messages), diff --git a/player/lua/defaults.lua b/player/lua/defaults.lua index bc9114ffa5..d0ef57cccd 100644 --- a/player/lua/defaults.lua +++ b/player/lua/defaults.lua @@ -31,6 +31,17 @@ function mp.input_define_section(section, contents, flags) mp.commandv("define-section", section, contents, flags) end +function mp.input_enable_section(section, flags) + if flags == nil then + flags = "" + end + mp.commandv("enable-section", section, flags) +end + +function mp.input_disable_section(section) + mp.commandv("disable-section", section) +end + -- For dispatching script_binding. This is sent as: -- script_message_to $script_name $binding_name $keystate -- The array is indexed by $binding_name, and has functions like this as value: @@ -140,7 +151,7 @@ local function update_key_bindings() end mp.input_define_section(section, cfg, flags) -- TODO: remove the section if the script is stopped - mp.input_enable_section(section, "allow-hide-cursor|allow-vo-dragging") + mp.input_enable_section(section, "allow-hide-cursor+allow-vo-dragging") end end diff --git a/player/lua/osc.lua b/player/lua/osc.lua index 8ce146d8e3..e131127922 100644 --- a/player/lua/osc.lua +++ b/player/lua/osc.lua @@ -1935,7 +1935,7 @@ end function do_enable_keybindings() if state.enabled then - mp.enable_key_bindings("showhide", "allow-vo-dragging|allow-hide-cursor") + mp.enable_key_bindings("showhide", "allow-vo-dragging+allow-hide-cursor") end end |