diff --git a/src/uosc/main.lua b/src/uosc/main.lua index 77655724..6413bef6 100644 --- a/src/uosc/main.lua +++ b/src/uosc/main.lua @@ -1090,10 +1090,15 @@ bind_command('paste-to-open', function() if payload then mp.commandv('loadfile', payload) end end) bind_command('paste-to-playlist', function() - local payload = get_clipboard() - if payload then - mp.commandv('loadfile', payload, 'append') - mp.commandv('show-text', t('Added to playlist') .. ': ' .. payload, 3000) + -- If there's no file loaded, we use `paste-to-open`, which both opens and adds to playlist + if state.is_idle then + mp.commandv('script-binding', 'uosc/paste-to-open') + else + local payload = get_clipboard() + if payload then + mp.commandv('loadfile', payload, 'append') + mp.commandv('show-text', t('Added to playlist') .. ': ' .. payload, 3000) + end end end) bind_command('copy-to-clipboard', function() set_clipboard(state.path) end)