-
-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Links which copy things to clipboard don't always work due to lack of user activation #18
Comments
This one is interesting. I thought this type of buttons didn't work because they needed user interaction. If you open the devtools and try to click the button with rango you get |
It is interesting, I can also see the issue whenever I haven't interacted with a page for some time and then try to use the rango hint. So it can also fail on the first attempt. I also don't get the error whenever I have just clicked the mouse manually (anywhere on the screen) just before issuing the command to rango, I guess this would count as recent user activation. |
philc/vimium#2521 |
Yeah, I'll implement it but I don't think we are going to get consistent behavior. I don't think that vimium issue has anything to do with this. We do have consistent copying/pasting to the clipboard, we do that for every command |
I solved this one but as anticipated we still get the DOMException most of the time. I think we can leave this issue open for anyone that bumps into that issue but change the title to reflect what's actually happening |
I tried to catch the error to warn the user when it fails by listening to window.onerror but that doesn't seem to work for DOMExceptions |
In Chrome this never works because I have to send the response back to talon before I execute the command. Since this really works anyway I don't think it's a big issue |
I've thought of a way to partially solve this by handling known cases. For example, github uses a web component called |
I found this random page you can see the issue from https://github.github.io/clipboard-copy-element/examples/
abc
for examplexyz
Result will be
abc
, when the desired contents isxyz
.When rango receives a request and performs its action, before it writes the response message it could inspect the clipboard again and if it isn't still the original request then send the current contents back to talon in the response object hopefully allowing Talon to set this as clipboard contents and not the original content before the action.
The text was updated successfully, but these errors were encountered: