mirror of
https://github.com/overte-org/overte.git
synced 2025-08-06 01:50:12 +02:00
remove 'isHMD' from input parameters of AudioDeviceList::onDevicesChanged
note: having 'isHMD' as a parameter doesn't make sense because function rebuilds model which is used by both HMD and Desktop
This commit is contained in:
parent
bbded2215d
commit
f6bbdec902
2 changed files with 23 additions and 21 deletions
|
@ -200,28 +200,34 @@ void AudioDeviceList::onDeviceChanged(const QAudioDeviceInfo& device, bool isHMD
|
||||||
emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, 0));
|
emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioDeviceList::onDevicesChanged(const QList<QAudioDeviceInfo>& devices, bool isHMD) {
|
void AudioDeviceList::onDevicesChanged(const QList<QAudioDeviceInfo>& devices) {
|
||||||
QAudioDeviceInfo& selectedDevice = isHMD ? _selectedHMDDevice : _selectedDesktopDevice;
|
|
||||||
|
|
||||||
const QString& savedDeviceName = isHMD ? _hmdSavedDeviceName : _desktopSavedDeviceName;
|
|
||||||
beginResetModel();
|
beginResetModel();
|
||||||
|
|
||||||
_devices.clear();
|
_devices.clear();
|
||||||
|
|
||||||
foreach(const QAudioDeviceInfo& deviceInfo, devices) {
|
foreach(const QAudioDeviceInfo& deviceInfo, devices) {
|
||||||
AudioDevice device;
|
AudioDevice device;
|
||||||
bool &isSelected = isHMD ? device.selectedHMD : device.selectedDesktop;
|
|
||||||
device.info = deviceInfo;
|
device.info = deviceInfo;
|
||||||
device.display = device.info.deviceName()
|
device.display = device.info.deviceName()
|
||||||
.replace("High Definition", "HD")
|
.replace("High Definition", "HD")
|
||||||
.remove("Device")
|
.remove("Device")
|
||||||
.replace(" )", ")");
|
.replace(" )", ")");
|
||||||
if (!selectedDevice.isNull()) {
|
|
||||||
isSelected = (device.info == selectedDevice);
|
for (bool isHMD : {false, true})
|
||||||
} else {
|
{
|
||||||
//no selected device for context. fallback to saved
|
QAudioDeviceInfo& selectedDevice = isHMD ? _selectedHMDDevice : _selectedDesktopDevice;
|
||||||
isSelected = (device.info.deviceName() == savedDeviceName);
|
bool &isSelected = isHMD ? device.selectedHMD : device.selectedDesktop;
|
||||||
|
|
||||||
|
if (!selectedDevice.isNull()) {
|
||||||
|
isSelected = (device.info == selectedDevice);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
//no selected device for context. fallback to saved
|
||||||
|
const QString& savedDeviceName = isHMD ? _hmdSavedDeviceName : _desktopSavedDeviceName;
|
||||||
|
isSelected = (device.info.deviceName() == savedDeviceName);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
qDebug() << "adding audio device:" << device.display << device.selectedDesktop << device.selectedHMD << _mode;
|
qDebug() << "adding audio device:" << device.display << device.selectedDesktop << device.selectedHMD << _mode;
|
||||||
_devices.push_back(newDevice(device));
|
_devices.push_back(newDevice(device));
|
||||||
}
|
}
|
||||||
|
@ -271,12 +277,10 @@ AudioDevices::AudioDevices(bool& contextIsHMD) : _contextIsHMD(contextIsHMD) {
|
||||||
// connections are made after client is initialized, so we must also fetch the devices
|
// connections are made after client is initialized, so we must also fetch the devices
|
||||||
const QList<QAudioDeviceInfo>& devicesInput = client->getAudioDevices(QAudio::AudioInput);
|
const QList<QAudioDeviceInfo>& devicesInput = client->getAudioDevices(QAudio::AudioInput);
|
||||||
const QList<QAudioDeviceInfo>& devicesOutput = client->getAudioDevices(QAudio::AudioOutput);
|
const QList<QAudioDeviceInfo>& devicesOutput = client->getAudioDevices(QAudio::AudioOutput);
|
||||||
//setup HMD devices
|
|
||||||
_inputs.onDevicesChanged(devicesInput, true);
|
//setup devices
|
||||||
_outputs.onDevicesChanged(devicesOutput, true);
|
_inputs.onDevicesChanged(devicesInput);
|
||||||
//setup Desktop devices
|
_outputs.onDevicesChanged(devicesOutput);
|
||||||
_inputs.onDevicesChanged(devicesInput, false);
|
|
||||||
_outputs.onDevicesChanged(devicesOutput, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
AudioDevices::~AudioDevices() {}
|
AudioDevices::~AudioDevices() {}
|
||||||
|
@ -375,11 +379,9 @@ void AudioDevices::onDevicesChanged(QAudio::Mode mode, const QList<QAudioDeviceI
|
||||||
|
|
||||||
//set devices for both contexts
|
//set devices for both contexts
|
||||||
if (mode == QAudio::AudioInput) {
|
if (mode == QAudio::AudioInput) {
|
||||||
_inputs.onDevicesChanged(devices, _contextIsHMD);
|
_inputs.onDevicesChanged(devices);
|
||||||
_inputs.onDevicesChanged(devices, !_contextIsHMD);
|
|
||||||
} else { // if (mode == QAudio::AudioOutput)
|
} else { // if (mode == QAudio::AudioOutput)
|
||||||
_outputs.onDevicesChanged(devices, _contextIsHMD);
|
_outputs.onDevicesChanged(devices);
|
||||||
_outputs.onDevicesChanged(devices, !_contextIsHMD);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -54,7 +54,7 @@ signals:
|
||||||
|
|
||||||
protected slots:
|
protected slots:
|
||||||
void onDeviceChanged(const QAudioDeviceInfo& device, bool isHMD);
|
void onDeviceChanged(const QAudioDeviceInfo& device, bool isHMD);
|
||||||
void onDevicesChanged(const QList<QAudioDeviceInfo>& devices, bool isHMD);
|
void onDevicesChanged(const QList<QAudioDeviceInfo>& devices);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class AudioDevices;
|
friend class AudioDevices;
|
||||||
|
|
Loading…
Reference in a new issue