-
Notifications
You must be signed in to change notification settings - Fork 75
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
Add Set::exclude_from_history on linux by setting x-kde-passwordManagerHint #155
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for this PR! The structure of it looks good. My suggestions are just minor code quality ones.
I would like to test this out for myself (probably tomorrow) but I once this is cleaned up I think its ready.
Co-authored-by: ComplexSpaces <[email protected]>
Co-authored-by: ComplexSpaces <[email protected]>
I just noticed that it didn't work properly for me without ... and I am not sure what to do about the CI-failure |
IIRC Plasma defaults to Wayland these days. Do you know if
This looks like a new lint from the latest stable Rust release. At the top of the |
I tried a little, and I wasn't able to properly solve the new CI-Issue |
I spent several hours tonight trying to test this out, with mixed results. This seems to work find in Plasma Wayland like you observed, but GNOME/Ubuntu were a mess. In my testing there, I used pano as a clipboard monitor. GNOME apparently doesn't support the wayland extension that Next testing in a GNOME X11 environment, I still couldn't get it to work with this PR. KeePassXC works fine. From what I can see, it works while the process using I'm not sure how to proceed here. It doesn't feel right to merge this when it can't be confirmed working-as-intended. I most likely will not have the time to continue digging into the X11 behavior in-depth because there's so many moving parts. Do you have interest in doing so @MrSmoer? |
I already started looking into the way the clipboard data flows, but could really wrap my head around it. The whole stack on gnome seems very convoluted to me, especially in connection with Xwayland and stuff. I dont have thaaat much time to spare, so this is going to be on my list of side-projects. I am not sure what would have to change in the ecosystem but I believe that it's just the way arboard interfaces with the x11-package or within the x11 rust-package. It would take some time :) |
Addresses #129
Implements the Set::exclude_from_history method for linux.
I tested this on Plasma Wayland (they implement data control protocol) and X11 using this short rust program:
It did not display the
secretext
when pressingSUPER+V
(opens klipper) but it did display thenotsecrettext
after 10 seconds, so it works as intended.Gnome doesn't implement the data control protocol, but testing this change with
wl-paste -l
(probably falling back to the xserver clipboard stuff) seemed to work as well.In contrast, using a gnome-shell-extension that hooks the the get_mimetypes-method from within the compositor for determinig the clipboard-data-content didn't seem to work properly.
With KeepassXC, which is just using Qt's-functions for handling the clipboard, this function behaved as expected on gnome from what I can tell.
I believe there is some deeper issue with the way gnome handles the clipboard in general, but I was not able to track down the specific difference between how Qt and arboard register their clipboard content to the compositor yet.
Thanks for reviewing this and have a nice Day!