X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Flib%2FCECClient.cpp;h=24f196f49287008800a01c1b88f76ff4d0463259;hb=5f2f3609d7ee857ac7e5d03600fbd735e99c892f;hp=013a7656209dc7ca9b76004291ba6a3f0f85c015;hpb=ee0c6edaf530a3cefbc25a6bcb40306dae8eabbf;p=deb_libcec.git diff --git a/src/lib/CECClient.cpp b/src/lib/CECClient.cpp index 013a765..24f196f 100644 --- a/src/lib/CECClient.cpp +++ b/src/lib/CECClient.cpp @@ -741,6 +741,13 @@ bool CCECClient::GetCurrentConfiguration(libcec_configuration &configuration) memcpy(configuration.strDeviceLanguage, m_configuration.strDeviceLanguage, 3); configuration.iFirmwareBuildDate = m_configuration.iFirmwareBuildDate; } + + // client version 1.6.3 + if (configuration.clientVersion >= CEC_CLIENT_VERSION_1_6_3) + { + configuration.bMonitorOnly = m_configuration.bMonitorOnly; + } + return true; } @@ -792,6 +799,12 @@ bool CCECClient::SetConfiguration(const libcec_configuration &configuration) memcpy(m_configuration.strDeviceLanguage, configuration.strDeviceLanguage, 3); } + // client version 1.6.3 + if (configuration.clientVersion >= CEC_CLIENT_VERSION_1_6_3) + { + m_configuration.bMonitorOnly = configuration.bMonitorOnly; + } + // ensure that there is at least 1 device type set if (m_configuration.deviceTypes.IsEmpty()) m_configuration.deviceTypes.Add(CEC_DEVICE_TYPE_RECORDING_DEVICE); @@ -1175,7 +1188,10 @@ bool CCECClient::SwitchMonitoring(bool bEnable) if (bEnable) return m_processor->UnregisterClient(this); else + { + m_configuration.bMonitorOnly = false; return m_processor->RegisterClient(this); + } } return false;