Merge lp://qastaging/~hile/mixxx/hotplug into lp://qastaging/~mixxxdevelopers/mixxx/trunk

Proposed by Ilkka Tuohela
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
Reviewer Review Type Date Requested Status
Mixxx Development Team Pending
Review via email: mp+118293@code.qastaging.launchpad.net

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.

To post a comment you must log in.
lp://qastaging/~hile/mixxx/hotplug updated
3293. By Ilkka Tuohela

Merge from 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

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.