Use non-blocking socket reads for rotctl track responses #109
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.
Ref. #108: Flyby singletrack UI can
become unresponsive during tracking since we wait for confirmation of
the previous response before we try to set a new position.
These changes modify the socket read to be non-blocking, so that we can
return back to the UI loop when the full response is not available yet,
and still retain the mechanism with the previous response being required
before we are allowed to set a new position.
This does not fully solve #108 since
we will have an issue with the hamlib status windows, but I'll continue
on that in a different branch and merge this already now so that the
user experience can be improved.