Also, I just noticed the change to ControlObjectThreadMain -- that needs to be reverted. When you use a COTM/COTW in Mixxx code you are declaring that valueChanged signals are expected to be delivered by the GUI/main thread so we need to save this behavior or we will run into trouble.
Without posting the event to the Qt event queue as it was implemented there's no guarantee that a valueChanged signal coming from the ControlObject will be received on the GUI thread.
Also, I just noticed the change to ControlObjectTh readMain -- that needs to be reverted. When you use a COTM/COTW in Mixxx code you are declaring that valueChanged signals are expected to be delivered by the GUI/main thread so we need to save this behavior or we will run into trouble.
Without posting the event to the Qt event queue as it was implemented there's no guarantee that a valueChanged signal coming from the ControlObject will be received on the GUI thread.