Seamless transfer of devices between plugin instances #750
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.
The problem (briefly discussed in #580 (comment)):
instance_aquire_devices
, or during dynamicinstance_create
/instance_destroy
), tuning of the device is unapplied (settings reverted back to original) before the new tuning is applied.This proposal makes the following changes:
@command
s (_(execute|cleanup)_all_device_commands
), there is a new argument providing (optionally) the instance from/to which the device is being moved.@command_(get|set)
we can handle all logic in the base plugin class.@command_custom
we pass thetransfer_instance
to the commandcontroller
, replace the current calls to_remove_devices_nocheck
/_add_devices_nocheck
with calls to the new_transfer_device
.irq
plugin, which uses@command_custom
, to support seamless device transfer (separate commit).