From: Alexander Nezhinsky <anezhins@xxxxxxxxxx> This patch-set adds shared Spice CD functionality to usb-device-widget. Every time the widget is created or redrawn, a placeholder toggle named "Spice CD (empty)" appears on top of the available USB devices list. It allows adding CD devices and, when clicked, fires up a file chooser. If an image path has been selected, a new Spice USB CD device is created. After the new device is added and this event is signalled to the widget, the original toggle shows the image file path and starts representing the CD. A new placeholder toggle for an empty Spice CD is added. When the media is unloaded, the shared CD device is removed. Otherwise, all standard scenarios for Spice USB device removal are supported. Necessary functionality and api for shared CD maintainance have been added to usb-device-manager. Alexander Nezhinsky (9): move spice_usb_backend_device_{eject|report_change} to usb_backend.h add spice_usb_device_manager shared CD related api functions Add --spice-share-cd command line option Implement spice_usb_device_widget_add_err_msg() in usb-device-widget Add empty CD entry to usb-device-widget, create shared CD when toggled Implement shared CD device auto-removal on disconnect, in usb-device-widget remove shared CD device on connect-fail during USB redirect attempt auto-connect shared CD devices added using command line remove un-connected shared CD devices upon usb-device-widget construction src/map-file | 3 + src/spice-option.c | 27 +++++++ src/usb-backend.h | 2 + src/usb-device-manager.c | 114 ++++++++++++++++++++++++++-- src/usb-device-manager.h | 14 ++++ src/usb-device-widget.c | 158 +++++++++++++++++++++++++++++++++++---- src/usb-emulation.h | 3 +- 7 files changed, 297 insertions(+), 24 deletions(-) -- 2.20.1 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel