mirror of
https://gitlab.linphone.org/BC/public/linphone-desktop.git
synced 2026-04-23 21:58:30 +00:00
fix paused status local conf
This commit is contained in:
parent
7e28a78ee8
commit
361c6d7ce1
8 changed files with 124 additions and 73 deletions
|
|
@ -271,6 +271,7 @@ void CallCore::setSelf(QSharedPointer<CallCore> me) {
|
|||
});
|
||||
mCallModelConnection->invokeToCore([this, state, message]() { setState(LinphoneEnums::fromLinphone(state)); });
|
||||
});
|
||||
|
||||
mCallModelConnection->makeConnectToModel(&CallModel::statusChanged, [this](linphone::Call::Status status) {
|
||||
mCallModelConnection->invokeToCore([this, status]() { setStatus(LinphoneEnums::fromLinphone(status)); });
|
||||
});
|
||||
|
|
@ -601,9 +602,13 @@ QSharedPointer<ConferenceCore> CallCore::getConferenceCore() const {
|
|||
|
||||
void CallCore::setConference(const QSharedPointer<ConferenceCore> &conference) {
|
||||
mustBeInMainThread(log().arg(Q_FUNC_INFO));
|
||||
if (mConference) disconnect(mConference.get(), &ConferenceCore::isMePausedChanged, this, nullptr);
|
||||
if (mConference != conference) {
|
||||
mConference = conference;
|
||||
lDebug() << "[CallCore] Set conference : " << mConference;
|
||||
if (mConference)
|
||||
connect(mConference.get(), &ConferenceCore::isMePausedChanged, this,
|
||||
[this] { setPaused(mConference->getIsMePaused()); });
|
||||
setIsConference(conference != nullptr);
|
||||
emit conferenceChanged();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,10 +50,26 @@ ConferenceCore::ConferenceCore(const std::shared_ptr<linphone::Conference> &conf
|
|||
auto me = conference->getMe();
|
||||
if (me) {
|
||||
mMe = ParticipantCore::create(me);
|
||||
auto meDevices = me->getDevices();
|
||||
for (auto &device : meDevices) {
|
||||
auto deviceCore = ParticipantDeviceCore::create(device);
|
||||
if (deviceCore) {
|
||||
mMeDevices.append(deviceCore);
|
||||
connect(deviceCore.get(), &ParticipantDeviceCore::stateChanged, this, [this, deviceCore] {
|
||||
auto state = deviceCore->getState();
|
||||
lInfo() << "me state changed, paused ="
|
||||
<< (state == LinphoneEnums::ParticipantDeviceState::Left ||
|
||||
state == LinphoneEnums::ParticipantDeviceState::OnHold);
|
||||
setIsMePaused(state == LinphoneEnums::ParticipantDeviceState::Left ||
|
||||
state == LinphoneEnums::ParticipantDeviceState::OnHold);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
ConferenceCore::~ConferenceCore() {
|
||||
mustBeInMainThread("~" + getClassName());
|
||||
mMeDevices.clear();
|
||||
if (mConferenceModel) emit mConferenceModel->removeListener();
|
||||
}
|
||||
|
||||
|
|
@ -217,3 +233,14 @@ void ConferenceCore::setActiveSpeakerDevice(const QSharedPointer<ParticipantDevi
|
|||
emit activeSpeakerDeviceChanged();
|
||||
}
|
||||
}
|
||||
|
||||
bool ConferenceCore::getIsMePaused() const {
|
||||
return mIsMePaused;
|
||||
}
|
||||
|
||||
void ConferenceCore::setIsMePaused(bool paused) {
|
||||
if (mIsMePaused != paused) {
|
||||
mIsMePaused = paused;
|
||||
emit isMePausedChanged();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -80,6 +80,9 @@ public:
|
|||
void setIsLocalScreenSharing(bool state);
|
||||
void setIsScreenSharingEnabled(bool state);
|
||||
|
||||
bool getIsMePaused() const;
|
||||
void setIsMePaused(bool paused);
|
||||
|
||||
std::shared_ptr<ConferenceModel> getModel() const;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
|
|
@ -92,6 +95,7 @@ signals:
|
|||
void activeSpeakerDeviceChanged();
|
||||
void subjectChanged();
|
||||
void isRecordingChanged();
|
||||
void isMePausedChanged();
|
||||
|
||||
void lToggleScreenSharing();
|
||||
|
||||
|
|
@ -100,12 +104,14 @@ private:
|
|||
std::shared_ptr<ConferenceModel> mConferenceModel;
|
||||
QSharedPointer<ParticipantDeviceCore> mActiveSpeakerDevice;
|
||||
QSharedPointer<ParticipantCore> mMe;
|
||||
QList<QSharedPointer<ParticipantDeviceCore>> mMeDevices;
|
||||
int mParticipantDeviceCount = 0;
|
||||
|
||||
bool mIsReady = false;
|
||||
bool mIsRecording = false;
|
||||
bool mIsLocalScreenSharing = false;
|
||||
bool mIsScreenSharingEnabled = false;
|
||||
bool mIsMePaused = false;
|
||||
QString mSubject;
|
||||
QDateTime mStartDate = QDateTime::currentDateTime();
|
||||
|
||||
|
|
|
|||
|
|
@ -659,64 +659,64 @@
|
|||
<translation>Die Aufnahme wurde in der folgenden Datei gespeichert: %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="393"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="418"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="394"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="419"/>
|
||||
<source>call_stats_codec_label</source>
|
||||
<extracomment>"Codec: %1 / %2 kHz"</extracomment>
|
||||
<translation>Codec: %1 / %2 kHz</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="397"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="421"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="398"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="422"/>
|
||||
<source>call_stats_bandwidth_label</source>
|
||||
<extracomment>"Bande passante : %1 %2 kbits/s %3 %4 kbits/s"</extracomment>
|
||||
<translation>Bandbreite: %1 %2 kbits/s %3 %4 kbits/s</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="403"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="426"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="404"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="427"/>
|
||||
<source>call_stats_loss_rate_label</source>
|
||||
<extracomment>"Taux de perte: %1% %2%"</extracomment>
|
||||
<translation>Verlustquote: %1% %2%</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="408"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="409"/>
|
||||
<source>call_stats_jitter_buffer_label</source>
|
||||
<extracomment>"Tampon de gigue: %1 ms"</extracomment>
|
||||
<translation>Jitter-Puffer: %1 ms</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="435"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="436"/>
|
||||
<source>call_stats_resolution_label</source>
|
||||
<extracomment>"Définition vidéo : %1 %2 %3 %4"</extracomment>
|
||||
<translation>Videoauflösung: %1 %2 %3 %4</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="441"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="442"/>
|
||||
<source>call_stats_fps_label</source>
|
||||
<extracomment>"FPS : %1 %2 %3 %4"</extracomment>
|
||||
<translation>FPS : %1 %2 %3 %4</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="654"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="659"/>
|
||||
<source>media_encryption_dtls</source>
|
||||
<extracomment>DTLS</extracomment>
|
||||
<translation>DTLS</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="657"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="662"/>
|
||||
<source>media_encryption_none</source>
|
||||
<extracomment>None</extracomment>
|
||||
<translation>Keine</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="660"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="665"/>
|
||||
<source>media_encryption_srtp</source>
|
||||
<extracomment>SRTP</extracomment>
|
||||
<translation>SRTP</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="663"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="668"/>
|
||||
<source>media_encryption_post_quantum</source>
|
||||
<extracomment>"ZRTP - Post quantique"</extracomment>
|
||||
<translation>Post-quantum ZRTP</translation>
|
||||
|
|
@ -847,43 +847,43 @@
|
|||
<context>
|
||||
<name>CallModel</name>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="346"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="356"/>
|
||||
<source>call_error_user_declined_toast</source>
|
||||
<extracomment>"Le correspondant a décliné l'appel"</extracomment>
|
||||
<translation>Der Benutzer hat den Anruf abgelehnt</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="350"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="360"/>
|
||||
<source>call_error_user_not_found_toast</source>
|
||||
<extracomment>"Le correspondant n'a pas été trouvé"</extracomment>
|
||||
<translation>Benutzer nicht gefunden</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="354"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="364"/>
|
||||
<source>call_error_user_busy_toast</source>
|
||||
<extracomment>"Le correspondant est occupé"</extracomment>
|
||||
<translation>Der Benutzer ist beschäftigt</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="358"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="368"/>
|
||||
<source>call_error_incompatible_media_params_toast</source>
|
||||
<extracomment>"Le correspondant ne peut accepter votre appel."</extracomment>
|
||||
<translation>Der Benutzer kann Ihren Anruf nicht annehmen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="362"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="372"/>
|
||||
<source>call_error_io_error_toast</source>
|
||||
<extracomment>"Service indisponible ou erreur réseau"</extracomment>
|
||||
<translation>Dienst nicht verfügbar oder Netzwerkfehler</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="366"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="376"/>
|
||||
<source>call_error_temporarily_unavailable_toast</source>
|
||||
<extracomment>"Temporairement indisponible"</extracomment>
|
||||
<translation>Vorübergehend nicht verfügbar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="370"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="380"/>
|
||||
<source>call_error_server_timeout_toast</source>
|
||||
<extracomment>"Délai d'attente du serveur dépassé"</extracomment>
|
||||
<translation>Server-Zeitüberschreitung</translation>
|
||||
|
|
|
|||
|
|
@ -659,64 +659,64 @@
|
|||
<translation>Recording has been saved in file : %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="393"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="418"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="394"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="419"/>
|
||||
<source>call_stats_codec_label</source>
|
||||
<extracomment>"Codec: %1 / %2 kHz"</extracomment>
|
||||
<translation>Codec: %1 / %2 kHz</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="397"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="421"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="398"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="422"/>
|
||||
<source>call_stats_bandwidth_label</source>
|
||||
<extracomment>"Bande passante : %1 %2 kbits/s %3 %4 kbits/s"</extracomment>
|
||||
<translation>Bandwidth : %1 %2 kbits/s %3 %4 kbits/s</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="403"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="426"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="404"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="427"/>
|
||||
<source>call_stats_loss_rate_label</source>
|
||||
<extracomment>"Taux de perte: %1% %2%"</extracomment>
|
||||
<translation>Loss rate: %1% %2%</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="408"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="409"/>
|
||||
<source>call_stats_jitter_buffer_label</source>
|
||||
<extracomment>"Tampon de gigue: %1 ms"</extracomment>
|
||||
<translation>Jitter buffer : %1 ms</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="435"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="436"/>
|
||||
<source>call_stats_resolution_label</source>
|
||||
<extracomment>"Définition vidéo : %1 %2 %3 %4"</extracomment>
|
||||
<translation>Video resolution: %1 %2 %3 %4</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="441"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="442"/>
|
||||
<source>call_stats_fps_label</source>
|
||||
<extracomment>"FPS : %1 %2 %3 %4"</extracomment>
|
||||
<translation>FPS : %1 %2 %3 %4</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="654"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="659"/>
|
||||
<source>media_encryption_dtls</source>
|
||||
<extracomment>DTLS</extracomment>
|
||||
<translation>DTLS</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="657"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="662"/>
|
||||
<source>media_encryption_none</source>
|
||||
<extracomment>None</extracomment>
|
||||
<translation>None</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="660"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="665"/>
|
||||
<source>media_encryption_srtp</source>
|
||||
<extracomment>SRTP</extracomment>
|
||||
<translation>SRTP</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="663"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="668"/>
|
||||
<source>media_encryption_post_quantum</source>
|
||||
<extracomment>"ZRTP - Post quantique"</extracomment>
|
||||
<translation>Post quantum ZRTP</translation>
|
||||
|
|
@ -847,43 +847,43 @@
|
|||
<context>
|
||||
<name>CallModel</name>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="346"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="356"/>
|
||||
<source>call_error_user_declined_toast</source>
|
||||
<extracomment>"Le correspondant a décliné l'appel"</extracomment>
|
||||
<translation>User declined the call</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="350"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="360"/>
|
||||
<source>call_error_user_not_found_toast</source>
|
||||
<extracomment>"Le correspondant n'a pas été trouvé"</extracomment>
|
||||
<translation>User was not found</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="354"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="364"/>
|
||||
<source>call_error_user_busy_toast</source>
|
||||
<extracomment>"Le correspondant est occupé"</extracomment>
|
||||
<translation>User is busy</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="358"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="368"/>
|
||||
<source>call_error_incompatible_media_params_toast</source>
|
||||
<extracomment>"Le correspondant ne peut accepter votre appel."</extracomment>
|
||||
<translation>User can't accept your call</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="362"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="372"/>
|
||||
<source>call_error_io_error_toast</source>
|
||||
<extracomment>"Service indisponible ou erreur réseau"</extracomment>
|
||||
<translation>Unavailable service or network error</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="366"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="376"/>
|
||||
<source>call_error_temporarily_unavailable_toast</source>
|
||||
<extracomment>"Temporairement indisponible"</extracomment>
|
||||
<translation>temporarily unavailable</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="370"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="380"/>
|
||||
<source>call_error_server_timeout_toast</source>
|
||||
<extracomment>"Délai d'attente du serveur dépassé"</extracomment>
|
||||
<translation>Server tiemout</translation>
|
||||
|
|
|
|||
|
|
@ -659,64 +659,64 @@
|
|||
<translation>L'appel a été enregistré dans le fichier : %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="393"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="418"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="394"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="419"/>
|
||||
<source>call_stats_codec_label</source>
|
||||
<extracomment>"Codec: %1 / %2 kHz"</extracomment>
|
||||
<translation>Codec: %1 / %2 kHz</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="397"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="421"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="398"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="422"/>
|
||||
<source>call_stats_bandwidth_label</source>
|
||||
<extracomment>"Bande passante : %1 %2 kbits/s %3 %4 kbits/s"</extracomment>
|
||||
<translation>Bande passante : %1 %2 kbits/s %3 %4 kbits/s</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="403"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="426"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="404"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="427"/>
|
||||
<source>call_stats_loss_rate_label</source>
|
||||
<extracomment>"Taux de perte: %1% %2%"</extracomment>
|
||||
<translation>Taux de perte: %1% %2%</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="408"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="409"/>
|
||||
<source>call_stats_jitter_buffer_label</source>
|
||||
<extracomment>"Tampon de gigue: %1 ms"</extracomment>
|
||||
<translation>Tampon de gigue: %1 ms</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="435"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="436"/>
|
||||
<source>call_stats_resolution_label</source>
|
||||
<extracomment>"Définition vidéo : %1 %2 %3 %4"</extracomment>
|
||||
<translation>Définition vidéo : %1 %2 %3 %4</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="441"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="442"/>
|
||||
<source>call_stats_fps_label</source>
|
||||
<extracomment>"FPS : %1 %2 %3 %4"</extracomment>
|
||||
<translation>FPS : %1 %2 %3 %4</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="654"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="659"/>
|
||||
<source>media_encryption_dtls</source>
|
||||
<extracomment>DTLS</extracomment>
|
||||
<translation>DTLS</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="657"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="662"/>
|
||||
<source>media_encryption_none</source>
|
||||
<extracomment>None</extracomment>
|
||||
<translation>None</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="660"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="665"/>
|
||||
<source>media_encryption_srtp</source>
|
||||
<extracomment>SRTP</extracomment>
|
||||
<translation>SRTP</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/call/CallCore.cpp" line="663"/>
|
||||
<location filename="../../core/call/CallCore.cpp" line="668"/>
|
||||
<source>media_encryption_post_quantum</source>
|
||||
<extracomment>"ZRTP - Post quantique"</extracomment>
|
||||
<translation>ZRTP - Post quantique</translation>
|
||||
|
|
@ -847,43 +847,43 @@
|
|||
<context>
|
||||
<name>CallModel</name>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="346"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="356"/>
|
||||
<source>call_error_user_declined_toast</source>
|
||||
<extracomment>"Le correspondant a décliné l'appel"</extracomment>
|
||||
<translation>Le correspondant a décliné l'appel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="350"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="360"/>
|
||||
<source>call_error_user_not_found_toast</source>
|
||||
<extracomment>"Le correspondant n'a pas été trouvé"</extracomment>
|
||||
<translation>Le correspondant n'a pas été trouvé</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="354"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="364"/>
|
||||
<source>call_error_user_busy_toast</source>
|
||||
<extracomment>"Le correspondant est occupé"</extracomment>
|
||||
<translation>Le correspondant est occupé</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="358"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="368"/>
|
||||
<source>call_error_incompatible_media_params_toast</source>
|
||||
<extracomment>"Le correspondant ne peut accepter votre appel."</extracomment>
|
||||
<translation>Le correspondant ne peut accepter votre appel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="362"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="372"/>
|
||||
<source>call_error_io_error_toast</source>
|
||||
<extracomment>"Service indisponible ou erreur réseau"</extracomment>
|
||||
<translation>Service indisponible ou erreur réseau</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="366"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="376"/>
|
||||
<source>call_error_temporarily_unavailable_toast</source>
|
||||
<extracomment>"Temporairement indisponible"</extracomment>
|
||||
<translation>Temporairement indisponible</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../model/call/CallModel.cpp" line="370"/>
|
||||
<location filename="../../model/call/CallModel.cpp" line="380"/>
|
||||
<source>call_error_server_timeout_toast</source>
|
||||
<extracomment>"Délai d'attente du serveur dépassé"</extracomment>
|
||||
<translation>Délai d'attente du serveur dépassé</translation>
|
||||
|
|
|
|||
|
|
@ -86,17 +86,27 @@ void CallModel::terminate() {
|
|||
void CallModel::setPaused(bool paused) {
|
||||
mustBeInLinphoneThread(log().arg(Q_FUNC_INFO));
|
||||
if (paused) {
|
||||
lInfo() << "Pausing call"
|
||||
<< (mMonitor->getRemoteAddress() ? mMonitor->getRemoteAddress()->asStringUriOnly()
|
||||
: "no remote address");
|
||||
if (mMonitor->getConference()) {
|
||||
lInfo() << "Leaving conference"
|
||||
<< (mMonitor->getRemoteAddress() ? mMonitor->getRemoteAddress()->asStringUriOnly() : "no address");
|
||||
mMonitor->getConference()->leave();
|
||||
} else {
|
||||
lInfo() << "Pausing call"
|
||||
<< (mMonitor->getRemoteAddress() ? mMonitor->getRemoteAddress()->asStringUriOnly()
|
||||
: "no remote address");
|
||||
mMonitor->pause();
|
||||
}
|
||||
} else {
|
||||
if (mMonitor->getConference()) mMonitor->getConference()->enter();
|
||||
mMonitor->resume();
|
||||
if (mMonitor->getConference()) {
|
||||
lInfo() << "Entering conference"
|
||||
<< (mMonitor->getRemoteAddress() ? mMonitor->getRemoteAddress()->asStringUriOnly() : "no address");
|
||||
mMonitor->getConference()->enter();
|
||||
} else {
|
||||
lInfo() << "Resuming call"
|
||||
<< (mMonitor->getRemoteAddress() ? mMonitor->getRemoteAddress()->asStringUriOnly()
|
||||
: "no remote address");
|
||||
mMonitor->resume();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,8 @@ Item {
|
|||
: ""
|
||||
|
||||
// currently speaking address (for hiding in list view)
|
||||
property string activeSpeakerAddress
|
||||
property string activeSpeakerAddress: activeSpeakerSticker.remoteAddress
|
||||
onActiveSpeakerAddressChanged: console.log("active speaker address changed", activeSpeakerAddress)
|
||||
|
||||
property ParticipantDeviceProxy participantDevices : ParticipantDeviceProxy {
|
||||
id: allDevices
|
||||
|
|
@ -43,17 +44,19 @@ Item {
|
|||
call: mainItem.call
|
||||
displayAll: !mainItem.conference
|
||||
participantDevice: mainItem.conference && mainItem.conference.core.activeSpeakerDevice
|
||||
useUniqueAddress: true
|
||||
property var address: participantDevice && participantDevice.core.address
|
||||
videoEnabled: (participantDevice && participantDevice.core.videoEnabled) || (!participantDevice && call && call.core.remoteVideoEnabled)
|
||||
qmlName: 'AS'
|
||||
securityBreach: !mainItem.conference && mainItem.call?.core.isMismatch || false
|
||||
displayPresence: false
|
||||
Binding {
|
||||
target: mainItem
|
||||
property: "activeSpeakerAddress"
|
||||
value: activeSpeakerSticker.address
|
||||
when: true
|
||||
}
|
||||
onAddressChanged: console.log("active speaker adress changed ==================", address)
|
||||
// Binding {
|
||||
// target: mainItem
|
||||
// property: "activeSpeakerAddress"
|
||||
// value: activeSpeakerSticker.address
|
||||
// when: true
|
||||
// }
|
||||
}
|
||||
ListView{
|
||||
id: sideStickers
|
||||
|
|
@ -68,7 +71,7 @@ Item {
|
|||
clip: true
|
||||
delegate: Item{ // Spacing workaround
|
||||
visible: $modelData && mainItem.callState != LinphoneEnums.CallState.End && mainItem.callState != LinphoneEnums.CallState.Released
|
||||
&& ($modelData.core.address != activeSpeakerAddress || mainItem.conference?.core.isScreenSharingEnabled) || false
|
||||
&& ($modelData.core.address != mainItem.activeSpeakerAddress || mainItem.conference?.core.isScreenSharingEnabled) || false
|
||||
height: visible ? Math.round((180 + 15) * DefaultStyle.dp) : 0
|
||||
width: Math.round(300 * DefaultStyle.dp)
|
||||
Sticker {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue