Fix TabletBelongsTo deserialization #254
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #253
In the output of
hyprctl -j devices
,.tablets[].belongsTo
is an object, which we try to deserialize into theTabletBelongsTo
enum. However, this JSON object is just a "flat" object, containing the fields of one of the enum variants, without a tag specifying which variant it is. So we must use#[serde(untagged)]
to correctly deserialize itedit: technically there is a tag: the
type
field in the parent object:Lmk if this solution is acceptable or if should instead take that
type
field into account (practically I don't think there's a difference)