diff --git a/player/javascript/defaults.js b/player/javascript/defaults.js index 0d1c520ed1..a5a383a506 100644 --- a/player/javascript/defaults.js +++ b/player/javascript/defaults.js @@ -678,6 +678,7 @@ function register_event_handler(t) { mp.commandv("script-message-to", "console", "complete", JSON.stringify({ client_name: mp.script_name, handler_id: handler_id, + original_line: args[0], list: completions, start_pos: completion_pos, append: completion_append || "", diff --git a/player/lua/console.lua b/player/lua/console.lua index e07e407961..df2085def8 100644 --- a/player/lua/console.lua +++ b/player/lua/console.lua @@ -102,8 +102,6 @@ local completion_buffer = {} local selected_completion_index local completion_pos local completion_append -local completion_old_line -local completion_old_cursor local autoselect_completion local has_completions @@ -1480,8 +1478,6 @@ end -- Show autocompletions. complete = function () - completion_old_line = line - completion_old_cursor = cursor mp.commandv("script-message-to", input_caller, input_caller_handler, "complete", utils.format_json({line:sub(1, cursor - 1)})) render() @@ -1802,7 +1798,7 @@ mp.register_script_message("complete", function (message) message = utils.parse_json(message) if message.client_name ~= input_caller or message.handler_id ~= input_caller_handler - or line ~= completion_old_line or cursor ~= completion_old_cursor then + or line:sub(1, cursor - 1) ~= message.original_line then return end diff --git a/player/lua/input.lua b/player/lua/input.lua index eb93fbb7b5..c99422a184 100644 --- a/player/lua/input.lua +++ b/player/lua/input.lua @@ -60,6 +60,7 @@ local function register_event_handler(t) mp.commandv("script-message-to", "console", "complete", utils.format_json({ client_name = mp.get_script_name(), handler_id = handler_id, + original_line = args[1], list = completions, start_pos = completion_pos, append = completion_append or "",