I think this can be resolved rather "easily", no need to violate HIG:
1. in the preferences main dialog, intercept the
QDialogButtonBox::accepted signal and accept() the dialog only if
okayToclose of each pref page is true (default)
2. in DlgPrefSound::slotApply, set okayToClose to true only if
SoundDeviceError is SOUNDDEVICE_ERROR_OK
I think this can be resolved rather "easily", no need to violate HIG:
1. in the preferences main dialog, intercept the Box::accepted signal and accept() the dialog only if :slotApply, set okayToClose to true only if ERROR_OK
QDialogButton
okayToclose of each pref page is true (default)
2. in DlgPrefSound:
SoundDeviceError is SOUNDDEVICE_
Does that makes sense?
https:/ /github. com/mixxxdj/ mixxx/blob/ 828a189b045050c a6ad5aa053e528e 92ce0b8653/ src/preferences /dialog/ dlgpreferences. cpp#L408- L442