Merge lp://qastaging/~hile/mixxx/hotplug into lp://qastaging/~mixxxdevelopers/mixxx/trunk
Status: | Needs review |
---|---|
Proposed branch: | lp://qastaging/~hile/mixxx/hotplug |
Merge into: | lp://qastaging/~mixxxdevelopers/mixxx/trunk |
Diff against target: |
1973 lines (+745/-312) 17 files modified
mixxx/build/features.py (+2/-2) mixxx/lib/hidapi/hidapi/hidapi.h (+1/-1) mixxx/lib/hidapi/linux/hid-libusb.c (+85/-60) mixxx/lib/hidapi/linux/hid.c (+296/-100) mixxx/lib/hidapi/mac/hid.c (+68/-38) mixxx/lib/hidapi/windows/Makefile.mingw (+5/-2) mixxx/lib/hidapi/windows/hid.c (+81/-34) mixxx/src/controllers/controller.h (+8/-0) mixxx/src/controllers/controllermanager.cpp (+116/-55) mixxx/src/controllers/controllermanager.h (+9/-4) mixxx/src/controllers/hid/hidcontroller.cpp (+12/-2) mixxx/src/controllers/hid/hidcontroller.h (+2/-0) mixxx/src/controllers/hid/hidenumerator.cpp (+46/-11) mixxx/src/controllers/hid/hidenumerator.h (+1/-0) mixxx/src/controllers/midi/portmidicontroller.cpp (+7/-0) mixxx/src/controllers/midi/portmidienumerator.cpp (+5/-2) mixxx/src/mixxx.cpp (+1/-1) |
To merge this branch: | bzr merge lp://qastaging/~hile/mixxx/hotplug |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Mixxx Development Team | Pending | ||
Review via email:
|
Description of the change
This branch changes controller manager device setup code so that the device setup function can be called on running system to implement hotplugging of controllers, and adds basic support to implement hotplugging in the backends.
It also implements HID hotplugging, removing and adding devices with a timer when devices are disconnected and connected. I have been running this hotplug code now for months, and after I fixed an error in the controller manager (preset was loaded every time changes were detected, causing multiple instances of same preset), it now seems to be very solid for HID devices.
For MIDI devices, the portmidi enumerator is changed to just return if devices were already loaded: until portmidi supports hotplug or we implement a new MIDI backend with something else than portmidi, this is the only thing we can do for MIDI.
If this is considered too late for 1.11, please merge the code at least to trunk.
Unmerged revisions
- 3293. By Ilkka Tuohela
-
Merge from trunk
- 3292. By Ilkka Tuohela
-
Merge from trunk
- 3291. By Ilkka Tuohela
-
Import changes to HID API