-
Notifications
You must be signed in to change notification settings - Fork 44
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
input_capture portal Signals are not working #187
Comments
I think the signature is wrong; so I would replicate the code outside of ashpd, use |
Thank you so much! I wanted to get back to this this week but I guess I don't have to! When I checked the flatpak docs, I totally missed the missing () ... |
No worries! the error message could have been better from zbus... Anyways, i will be doing a release shortly that includes this |
Im now running into this issue:
Do you have an example where you got this to work correctly? |
That looks like a completely different issue. You would have to debug it yourself as I am not familiar with libei and don't have the time to dig into it now |
sorry I was a bit unclear but it's still kind of the same problem and I still can not receive the Activated signal because of it. |
If you have code I can easily run to test it, I would be happy to do some debugging. |
Maybe @whot would have an idea? |
which error message? The Probably worth checking with dbus-monitor to see what's being sent and comparing this to your parsing code. |
one second |
https://github.com/feschber/ashpd-mre this is basically what I've tried so far. |
In lan-mouse the libei-producer branch contains my attempts. (but with more irrelevant stuff) |
An activated signal is clearly arriving but the deserialization fails here (just updated the example to fix the logging) |
I have no idea tbh, this looks like it's inside the dictionary deserialization but I don't know how this one works. From a quick look at input_capture.rs that bit looks correct, I don't know if you can somehow hook extra debug messages into the deserialization code to figure out what it's trying to do. |
found the culprit! |
The
receive_activate()
/receive_deactivate()
Streams on theinput_capture
portal never yield any Result.I did some digging and could narrow it down a bit:
receive_activated
callssignal("Activated")
which yields a Stream that filter-maps on the result ofmsg.body::<Activated>().ok()
So I tried to replicated the
body()
call manually and it always throws the following error:Which then of course results in the signal getting filtered by the filter_map call.
This error in
body
is originated fromzvariant::from_slice_fds_for_dynamic_signature
->deserializer_for_signature
-> ... ->deserialize_seq
where it ultimately fails inzbus/zvariant/src/dbus/de.rs:347
because it does not expect ano
.The text was updated successfully, but these errors were encountered: