mirror of
https://github.com/neovim/neovim.git
synced 2025-09-16 16:28:17 +00:00
paste: abort paste if handler does not return true
This commit is contained in:
@@ -109,7 +109,7 @@ local function _paste(data)
|
||||
-- TODO: do not redraw (slow!) until paste is finished.
|
||||
-- if eof then
|
||||
vim.api.nvim_command('redraw')
|
||||
return 0
|
||||
return true -- Paste will not continue if not returning `true`.
|
||||
end
|
||||
|
||||
-- TODO(ZyX-I): Create compatibility layer.
|
||||
|
@@ -133,9 +133,8 @@ static void tinput_wait_enqueue(void **argv)
|
||||
Object fret
|
||||
= nvim_execute_lua(STATIC_CSTR_AS_STRING("return vim._paste(...)"),
|
||||
args, &err);
|
||||
if ((fret.type == kObjectTypeInteger && fret.data.integer)
|
||||
|| (fret.type == kObjectTypeBoolean && fret.data.boolean)
|
||||
|| (fret.type == kObjectTypeString && fret.data.string.size)) {
|
||||
if (fret.type != kObjectTypeBoolean || !fret.data.boolean) {
|
||||
// Abort paste if handler does not return true.
|
||||
input->paste_enabled = false;
|
||||
}
|
||||
api_free_object(fret);
|
||||
|
Reference in New Issue
Block a user