prevent cloning when not necessary

This commit is contained in:
Gaelle Braud 2025-09-23 16:17:34 +02:00
parent 285e6645f8
commit 598b45bbf4
27 changed files with 323 additions and 332 deletions

View file

@ -43,7 +43,7 @@ AccountCore::AccountCore(const std::shared_ptr<linphone::Account> &account) : QO
auto address = account->getContactAddress(); auto address = account->getContactAddress();
mContactAddress = address ? Utils::coreStringToAppString(account->getContactAddress()->asStringUriOnly()) : ""; mContactAddress = address ? Utils::coreStringToAppString(account->getContactAddress()->asStringUriOnly()) : "";
auto params = account->getParams()->clone(); auto params = account->getParams()->clone();
auto identityAddress = params->getIdentityAddress()->clone(); auto identityAddress = params->getIdentityAddress();
mIdentityAddress = identityAddress ? Utils::coreStringToAppString(identityAddress->asStringUriOnly()) : ""; mIdentityAddress = identityAddress ? Utils::coreStringToAppString(identityAddress->asStringUriOnly()) : "";
mPictureUri = Utils::coreStringToAppString(params->getPictureUri()); mPictureUri = Utils::coreStringToAppString(params->getPictureUri());
mRegistrationState = LinphoneEnums::fromLinphone(account->getState()); mRegistrationState = LinphoneEnums::fromLinphone(account->getState());
@ -52,8 +52,9 @@ AccountCore::AccountCore(const std::shared_ptr<linphone::Account> &account) : QO
mDisplayName = Utils::coreStringToAppString(identityAddress->getDisplayName()); mDisplayName = Utils::coreStringToAppString(identityAddress->getDisplayName());
if (mDisplayName.isEmpty()) { if (mDisplayName.isEmpty()) {
mDisplayName = ToolModel::getDisplayName(identityAddress); mDisplayName = ToolModel::getDisplayName(identityAddress);
identityAddress->setDisplayName(Utils::appStringToCoreString(mDisplayName)); auto copyAddress = identityAddress->clone();
params->setIdentityAddress(identityAddress); copyAddress->setDisplayName(Utils::appStringToCoreString(mDisplayName));
params->setIdentityAddress(copyAddress);
account->setParams(params); account->setParams(params);
} }
mRegisterEnabled = params->registerEnabled(); mRegisterEnabled = params->registerEnabled();

View file

@ -46,8 +46,7 @@ CallHistoryCore::CallHistoryCore(const std::shared_ptr<linphone::CallLog> &callL
mustBeInLinphoneThread(getClassName()); mustBeInLinphoneThread(getClassName());
mCallHistoryModel = std::make_shared<CallHistoryModel>(callLog); mCallHistoryModel = std::make_shared<CallHistoryModel>(callLog);
auto addr = callLog->getRemoteAddress()->clone(); auto addr = callLog->getRemoteAddress();
addr->clean();
mStatus = LinphoneEnums::fromLinphone(callLog->getStatus()); mStatus = LinphoneEnums::fromLinphone(callLog->getStatus());
mDate = QDateTime::fromMSecsSinceEpoch(callLog->getStartDate() * 1000); mDate = QDateTime::fromMSecsSinceEpoch(callLog->getStartDate() * 1000);
mIsOutgoing = callLog->getDir() == linphone::Call::Dir::Outgoing; mIsOutgoing = callLog->getDir() == linphone::Call::Dir::Outgoing;
@ -129,14 +128,14 @@ void CallHistoryCore::setSelf(QSharedPointer<CallHistoryCore> me) {
mCoreModelConnection->makeConnectToModel(&CoreModel::friendRemoved, &CallHistoryCore::onRemoved); mCoreModelConnection->makeConnectToModel(&CoreModel::friendRemoved, &CallHistoryCore::onRemoved);
// Update display name when display name has been requested from magic search cause not found in linphone friends // Update display name when display name has been requested from magic search cause not found in linphone friends
// (required to get the right display name if ldap friends cleared) // (required to get the right display name if ldap friends cleared)
mCoreModelConnection->makeConnectToModel(&CoreModel::magicSearchResultReceived, [this, remoteAddress = mRemoteAddress] { mCoreModelConnection->makeConnectToModel(&CoreModel::magicSearchResultReceived,
auto displayName = ToolModel::getDisplayName(remoteAddress); [this, remoteAddress = mRemoteAddress] {
mCoreModelConnection->invokeToCore([this, displayName]() { auto displayName = ToolModel::getDisplayName(remoteAddress);
mDisplayName = displayName; mCoreModelConnection->invokeToCore([this, displayName]() {
emit displayNameChanged(); mDisplayName = displayName;
}); emit displayNameChanged();
}); });
});
} }
ConferenceInfoGui *CallHistoryCore::getConferenceInfoGui() const { ConferenceInfoGui *CallHistoryCore::getConferenceInfoGui() const {

View file

@ -115,8 +115,7 @@ CallCore::CallCore(const std::shared_ptr<linphone::Call> &call) : QObject(nullpt
mRemoteVideoEnabled = mRemoteVideoEnabled =
videoDirection == linphone::MediaDirection::SendOnly || videoDirection == linphone::MediaDirection::SendRecv; videoDirection == linphone::MediaDirection::SendOnly || videoDirection == linphone::MediaDirection::SendRecv;
mState = LinphoneEnums::fromLinphone(call->getState()); mState = LinphoneEnums::fromLinphone(call->getState());
auto remoteAddress = call->getCallLog()->getRemoteAddress()->clone(); auto remoteAddress = call->getCallLog()->getRemoteAddress();
remoteAddress->clean();
mRemoteAddress = Utils::coreStringToAppString(remoteAddress->asStringUriOnly()); mRemoteAddress = Utils::coreStringToAppString(remoteAddress->asStringUriOnly());
mRemoteUsername = Utils::coreStringToAppString(remoteAddress->getUsername()); mRemoteUsername = Utils::coreStringToAppString(remoteAddress->getUsername());
auto linphoneFriend = ToolModel::findFriendByAddress(remoteAddress); auto linphoneFriend = ToolModel::findFriendByAddress(remoteAddress);

View file

@ -45,8 +45,7 @@ ChatCore::ChatCore(const std::shared_ptr<linphone::ChatRoom> &chatRoom) : QObjec
mustBeInLinphoneThread(getClassName()); mustBeInLinphoneThread(getClassName());
App::getInstance()->mEngine->setObjectOwnership(this, QQmlEngine::CppOwnership); App::getInstance()->mEngine->setObjectOwnership(this, QQmlEngine::CppOwnership);
mLastUpdatedTime = QDateTime::fromSecsSinceEpoch(chatRoom->getLastUpdateTime()); mLastUpdatedTime = QDateTime::fromSecsSinceEpoch(chatRoom->getLastUpdateTime());
auto chatRoomAddress = chatRoom->getPeerAddress()->clone(); auto chatRoomAddress = chatRoom->getPeerAddress();
chatRoomAddress->clean();
mChatRoomAddress = Utils::coreStringToAppString(chatRoomAddress->asStringUriOnly()); mChatRoomAddress = Utils::coreStringToAppString(chatRoomAddress->asStringUriOnly());
if (chatRoom->hasCapability((int)linphone::ChatRoom::Capabilities::Basic)) { if (chatRoom->hasCapability((int)linphone::ChatRoom::Capabilities::Basic)) {
mTitle = ToolModel::getDisplayName(chatRoomAddress); mTitle = ToolModel::getDisplayName(chatRoomAddress);
@ -61,8 +60,8 @@ ChatCore::ChatCore(const std::shared_ptr<linphone::ChatRoom> &chatRoom) : QObjec
if (chatRoom->hasCapability((int)linphone::ChatRoom::Capabilities::OneToOne)) { if (chatRoom->hasCapability((int)linphone::ChatRoom::Capabilities::OneToOne)) {
if (participants.size() > 0) { if (participants.size() > 0) {
auto peer = participants.front(); auto peer = participants.front();
if (peer) mTitle = ToolModel::getDisplayName(peer->getAddress()->clone()); if (peer) mTitle = ToolModel::getDisplayName(peer->getAddress());
mAvatarUri = ToolModel::getDisplayName(peer->getAddress()->clone()); mAvatarUri = ToolModel::getDisplayName(peer->getAddress());
if (participants.size() == 1) { if (participants.size() == 1) {
auto peerAddress = peer->getAddress(); auto peerAddress = peer->getAddress();
if (peerAddress) mParticipantAddress = Utils::coreStringToAppString(peerAddress->asStringUriOnly()); if (peerAddress) mParticipantAddress = Utils::coreStringToAppString(peerAddress->asStringUriOnly());
@ -217,8 +216,8 @@ void ChatCore::setSelf(QSharedPointer<ChatCore> me) {
auto linParticipants = chatRoom->getParticipants(); auto linParticipants = chatRoom->getParticipants();
if (linParticipants.size() > 0) { if (linParticipants.size() > 0) {
auto peer = linParticipants.front(); auto peer = linParticipants.front();
if (peer) title = ToolModel::getDisplayName(peer->getAddress()->clone()); if (peer) title = ToolModel::getDisplayName(peer->getAddress());
avatarUri = ToolModel::getDisplayName(peer->getAddress()->clone()); avatarUri = ToolModel::getDisplayName(peer->getAddress());
if (linParticipants.size() == 1) { if (linParticipants.size() == 1) {
auto peerAddress = peer->getAddress(); auto peerAddress = peer->getAddress();
if (peerAddress) if (peerAddress)
@ -319,9 +318,9 @@ void ChatCore::setSelf(QSharedPointer<ChatCore> me) {
[this](const std::shared_ptr<linphone::ChatRoom> &chatRoom, [this](const std::shared_ptr<linphone::ChatRoom> &chatRoom,
const std::shared_ptr<const linphone::Address> &remoteAddress, bool isComposing) { const std::shared_ptr<const linphone::Address> &remoteAddress, bool isComposing) {
if (mChatModel->getMonitor() != chatRoom) return; if (mChatModel->getMonitor() != chatRoom) return;
QString name = isComposing ? ToolModel::getDisplayName(remoteAddress->clone()) : QString(); QString name = isComposing ? ToolModel::getDisplayName(remoteAddress) : QString();
auto remoteAddr = remoteAddress->clone(); auto remoteAddr = remoteAddress;
remoteAddr->clean(); // remoteAddr->clean();
mChatModelConnection->invokeToCore( mChatModelConnection->invokeToCore(
[this, name, address = Utils::coreStringToAppString(remoteAddr->asStringUriOnly())]() { [this, name, address = Utils::coreStringToAppString(remoteAddr->asStringUriOnly())]() {
setComposingName(name); setComposingName(name);
@ -673,7 +672,7 @@ void ChatCore::updateInfo(const std::shared_ptr<linphone::Friend> &updatedFriend
} }
int capabilities = mChatModel->getCapabilities(); int capabilities = mChatModel->getCapabilities();
auto chatroom = mChatModel->getMonitor(); auto chatroom = mChatModel->getMonitor();
auto chatRoomAddress = chatroom->getPeerAddress()->clone(); auto chatRoomAddress = chatroom->getPeerAddress();
if (mChatModel->hasCapability((int)linphone::ChatRoom::Capabilities::Basic)) { if (mChatModel->hasCapability((int)linphone::ChatRoom::Capabilities::Basic)) {
mTitle = ToolModel::getDisplayName(chatRoomAddress); mTitle = ToolModel::getDisplayName(chatRoomAddress);
mAvatarUri = ToolModel::getDisplayName(chatRoomAddress); mAvatarUri = ToolModel::getDisplayName(chatRoomAddress);
@ -684,8 +683,8 @@ void ChatCore::updateInfo(const std::shared_ptr<linphone::Friend> &updatedFriend
auto participants = chatroom->getParticipants(); auto participants = chatroom->getParticipants();
if (participants.size() > 0) { if (participants.size() > 0) {
auto peer = participants.front(); auto peer = participants.front();
if (peer) mTitle = ToolModel::getDisplayName(peer->getAddress()->clone()); if (peer) mTitle = ToolModel::getDisplayName(peer->getAddress());
mAvatarUri = ToolModel::getDisplayName(peer->getAddress()->clone()); mAvatarUri = ToolModel::getDisplayName(peer->getAddress());
if (participants.size() == 1) { if (participants.size() == 1) {
auto peerAddress = peer->getAddress(); auto peerAddress = peer->getAddress();
if (peerAddress) if (peerAddress)

View file

@ -119,12 +119,12 @@ ChatMessageCore::ChatMessageCore(const std::shared_ptr<linphone::ChatMessage> &c
mIsOutgoing = chatmessage->isOutgoing(); mIsOutgoing = chatmessage->isOutgoing();
mIsRemoteMessage = !chatmessage->isOutgoing(); mIsRemoteMessage = !chatmessage->isOutgoing();
mPeerAddress = Utils::coreStringToAppString(chatmessage->getPeerAddress()->asStringUriOnly()); mPeerAddress = Utils::coreStringToAppString(chatmessage->getPeerAddress()->asStringUriOnly());
mPeerName = ToolModel::getDisplayName(chatmessage->getPeerAddress()->clone()); mPeerName = ToolModel::getDisplayName(chatmessage->getPeerAddress());
auto fromAddress = chatmessage->getFromAddress()->clone(); auto fromAddress = chatmessage->getFromAddress();
fromAddress->clean(); // fromAddress->clean();
mFromAddress = Utils::coreStringToAppString(fromAddress->asStringUriOnly()); mFromAddress = Utils::coreStringToAppString(fromAddress->asStringUriOnly());
mFromName = ToolModel::getDisplayName(chatmessage->getFromAddress()->clone()); mFromName = ToolModel::getDisplayName(chatmessage->getFromAddress());
mToName = ToolModel::getDisplayName(chatmessage->getToAddress()->clone()); mToName = ToolModel::getDisplayName(chatmessage->getToAddress());
auto chatroom = chatmessage->getChatRoom(); auto chatroom = chatmessage->getChatRoom();
mIsFromChatGroup = chatroom->hasCapability((int)linphone::ChatRoom::Capabilities::Conference) && mIsFromChatGroup = chatroom->hasCapability((int)linphone::ChatRoom::Capabilities::Conference) &&
@ -188,7 +188,7 @@ ChatMessageCore::ChatMessageCore(const std::shared_ptr<linphone::ChatMessage> &c
auto replymessage = chatmessage->getReplyMessage(); auto replymessage = chatmessage->getReplyMessage();
if (replymessage) { if (replymessage) {
mReplyText = ToolModel::getMessageFromContent(replymessage->getContents()); mReplyText = ToolModel::getMessageFromContent(replymessage->getContents());
if (mIsFromChatGroup) mRepliedToName = ToolModel::getDisplayName(replymessage->getFromAddress()->clone()); if (mIsFromChatGroup) mRepliedToName = ToolModel::getDisplayName(replymessage->getFromAddress());
} }
} }
mImdnStatusList = computeDeliveryStatus(chatmessage); mImdnStatusList = computeDeliveryStatus(chatmessage);

View file

@ -100,7 +100,7 @@ void EventLogCore::computeEvent(const std::shared_ptr<const linphone::EventLog>
mImportant = false; mImportant = false;
mEphemeralRelated = false; mEphemeralRelated = false;
auto participantAddress = eventLog->getParticipantAddress() ? eventLog->getParticipantAddress()->clone() : nullptr; auto participantAddress = eventLog->getParticipantAddress() ? eventLog->getParticipantAddress() : nullptr;
switch (eventLog->getType()) { switch (eventLog->getType()) {
case linphone::EventLog::Type::ConferenceCreated: case linphone::EventLog::Type::ConferenceCreated:
@ -121,7 +121,7 @@ void EventLogCore::computeEvent(const std::shared_ptr<const linphone::EventLog>
case linphone::EventLog::Type::ConferenceSecurityEvent: { case linphone::EventLog::Type::ConferenceSecurityEvent: {
if (eventLog->getSecurityEventType() == linphone::EventLog::SecurityEventType::SecurityLevelDowngraded) { if (eventLog->getSecurityEventType() == linphone::EventLog::SecurityEventType::SecurityLevelDowngraded) {
auto faultyParticipant = eventLog->getSecurityEventFaultyDeviceAddress() auto faultyParticipant = eventLog->getSecurityEventFaultyDeviceAddress()
? eventLog->getSecurityEventFaultyDeviceAddress()->clone() ? eventLog->getSecurityEventFaultyDeviceAddress()
: nullptr; : nullptr;
if (faultyParticipant) if (faultyParticipant)
mEventDetails = tr("conference_security_event").arg(ToolModel::getDisplayName(faultyParticipant)); mEventDetails = tr("conference_security_event").arg(ToolModel::getDisplayName(faultyParticipant));

View file

@ -48,7 +48,7 @@ ConferenceCore::ConferenceCore(const std::shared_ptr<linphone::Conference> &conf
mIsScreenSharingEnabled = mConferenceModel->isScreenSharingEnabled(); mIsScreenSharingEnabled = mConferenceModel->isScreenSharingEnabled();
mIsRecording = conference->isRecording(); mIsRecording = conference->isRecording();
auto me = conference->getMe(); auto me = conference->getMe();
auto confAddress = conference->getConferenceAddress()->clone(); auto confAddress = conference->getConferenceAddress();
if (confAddress) { if (confAddress) {
mConfUri = Utils::coreStringToAppString(confAddress->asStringUriOnly()); mConfUri = Utils::coreStringToAppString(confAddress->asStringUriOnly());
} }

View file

@ -188,9 +188,8 @@ void ConferenceInfoCore::setSelf(QSharedPointer<ConferenceInfoCore> me) {
QString uri; QString uri;
if (state == linphone::ConferenceScheduler::State::Ready) { if (state == linphone::ConferenceScheduler::State::Ready) {
uri = mConferenceInfoModel->getConferenceScheduler()->getUri(); uri = mConferenceInfoModel->getConferenceScheduler()->getUri();
emit CoreModel::getInstance() -> conferenceInfoReceived( emit CoreModel::getInstance()->conferenceInfoReceived(
CoreModel::getInstance()->getCore(), CoreModel::getInstance()->getCore(), mConferenceInfoModel->getConferenceInfo());
mConferenceInfoModel->getConferenceInfo());
} }
mConfInfoModelConnection->invokeToCore([this, state = LinphoneEnums::fromLinphone(state), mConfInfoModelConnection->invokeToCore([this, state = LinphoneEnums::fromLinphone(state),
infoState = LinphoneEnums::fromLinphone(confInfoState), infoState = LinphoneEnums::fromLinphone(confInfoState),

View file

@ -55,10 +55,7 @@ int AbstractEventCountNotifier::getCurrentEventCount() const {
else { else {
auto currentAccount = CoreModel::getInstance()->getCore()->getDefaultAccount(); auto currentAccount = CoreModel::getInstance()->getCore()->getDefaultAccount();
if (currentAccount) { if (currentAccount) {
auto linphoneChatRooms = currentAccount->filterChatRooms(""); count += currentAccount->getUnreadChatMessageCount();
for (const auto &chatRoom : linphoneChatRooms) {
count += chatRoom->getUnreadMessagesCount();
}
} }
return count; return count;
} }

View file

@ -342,8 +342,8 @@ void Notifier::notifyReceivedMessages(const std::shared_ptr<linphone::ChatRoom>
auto getMessage = [this, &remoteAddress, &txt](const shared_ptr<linphone::ChatMessage> &message) { auto getMessage = [this, &remoteAddress, &txt](const shared_ptr<linphone::ChatMessage> &message) {
if (message->isRead()) return; if (message->isRead()) return;
auto remoteAddr = message->getFromAddress()->clone(); auto remoteAddr = message->getFromAddress();
remoteAddr->clean(); // remoteAddr->clean();
remoteAddress = Utils::coreStringToAppString(remoteAddr->asStringUriOnly()); remoteAddress = Utils::coreStringToAppString(remoteAddr->asStringUriOnly());
auto fileContent = message->getFileTransferInformation(); auto fileContent = message->getFileTransferInformation();
if (!fileContent) { if (!fileContent) {

View file

@ -52,8 +52,8 @@ ParticipantCore::ParticipantCore(const std::shared_ptr<linphone::Participant> &p
mIsMe = ToolModel::isMe(mSipAddress); mIsMe = ToolModel::isMe(mSipAddress);
mCreationTime = QDateTime::fromSecsSinceEpoch(participant->getCreationTime()); mCreationTime = QDateTime::fromSecsSinceEpoch(participant->getCreationTime());
mDisplayName = Utils::coreStringToAppString(participantAddress->getDisplayName()); mDisplayName = Utils::coreStringToAppString(participantAddress->getDisplayName());
if (mDisplayName.isEmpty()) mDisplayName = ToolModel::getDisplayName(participantAddress->clone()); if (mDisplayName.isEmpty()) mDisplayName = ToolModel::getDisplayName(participantAddress);
auto isFriend = ToolModel::findFriendByAddress(participantAddress->clone()); auto isFriend = ToolModel::findFriendByAddress(participantAddress);
mSecurityLevel = mSecurityLevel =
isFriend ? LinphoneEnums::fromLinphone(isFriend->getSecurityLevel()) : LinphoneEnums::SecurityLevel::None; isFriend ? LinphoneEnums::fromLinphone(isFriend->getSecurityLevel()) : LinphoneEnums::SecurityLevel::None;
for (auto &device : participant->getDevices()) { for (auto &device : participant->getDevices()) {

View file

@ -44,7 +44,7 @@ ParticipantDeviceCore::ParticipantDeviceCore(const std::shared_ptr<linphone::Par
mustBeInLinphoneThread(getClassName()); mustBeInLinphoneThread(getClassName());
if (device) { if (device) {
mName = Utils::coreStringToAppString(device->getName()); mName = Utils::coreStringToAppString(device->getName());
auto deviceAddress = device->getAddress()->clone(); auto deviceAddress = device->getAddress();
mUniqueAddress = Utils::coreStringToAppString(deviceAddress->asString()); mUniqueAddress = Utils::coreStringToAppString(deviceAddress->asString());
mAddress = Utils::coreStringToAppString(deviceAddress->asStringUriOnly()); mAddress = Utils::coreStringToAppString(deviceAddress->asStringUriOnly());
// the display name of the device himself may be the uncleaned sip uri // the display name of the device himself may be the uncleaned sip uri

View file

@ -27,45 +27,45 @@
<context> <context>
<name>AccountCore</name> <name>AccountCore</name>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="444"/> <location filename="../../core/account/AccountCore.cpp" line="445"/>
<source>drawer_menu_account_connection_status_connected</source> <source>drawer_menu_account_connection_status_connected</source>
<extracomment>&quot;Connecté&quot;</extracomment> <extracomment>&quot;Connecté&quot;</extracomment>
<translation>Verbunden</translation> <translation>Verbunden</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="447"/> <location filename="../../core/account/AccountCore.cpp" line="448"/>
<source>drawer_menu_account_connection_status_refreshing</source> <source>drawer_menu_account_connection_status_refreshing</source>
<translation>Aktualisiere</translation> <translation>Aktualisiere</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="450"/> <location filename="../../core/account/AccountCore.cpp" line="451"/>
<source>drawer_menu_account_connection_status_progress</source> <source>drawer_menu_account_connection_status_progress</source>
<translation>Verbinde</translation> <translation>Verbinde</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="453"/> <location filename="../../core/account/AccountCore.cpp" line="454"/>
<source>drawer_menu_account_connection_status_failed</source> <source>drawer_menu_account_connection_status_failed</source>
<translation>Fehler</translation> <translation>Fehler</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="457"/> <location filename="../../core/account/AccountCore.cpp" line="458"/>
<source>drawer_menu_account_connection_status_cleared</source> <source>drawer_menu_account_connection_status_cleared</source>
<translation>Deaktiviert</translation> <translation>Deaktiviert</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="491"/> <location filename="../../core/account/AccountCore.cpp" line="492"/>
<source>manage_account_status_connected_summary</source> <source>manage_account_status_connected_summary</source>
<extracomment>&quot;Vous êtes en ligne et joignable.&quot;</extracomment> <extracomment>&quot;Vous êtes en ligne et joignable.&quot;</extracomment>
<translation>Sie sind online und erreichbar.</translation> <translation>Sie sind online und erreichbar.</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="494"/> <location filename="../../core/account/AccountCore.cpp" line="495"/>
<source>manage_account_status_failed_summary</source> <source>manage_account_status_failed_summary</source>
<extracomment>&quot;Erreur de connexion, vérifiez vos paramètres.&quot;</extracomment> <extracomment>&quot;Erreur de connexion, vérifiez vos paramètres.&quot;</extracomment>
<translation>Verbindungsfehler, überprüfen Sie Ihre Einstellungen.</translation> <translation>Verbindungsfehler, überprüfen Sie Ihre Einstellungen.</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="498"/> <location filename="../../core/account/AccountCore.cpp" line="499"/>
<source>manage_account_status_cleared_summary</source> <source>manage_account_status_cleared_summary</source>
<extracomment>&quot;Compte désactivé, vous ne recevrez ni appel ni message.&quot;</extracomment> <extracomment>&quot;Compte désactivé, vous ne recevrez ni appel ni message.&quot;</extracomment>
<translation>Konto deaktiviert, Sie erhalten keine Anrufe oder Nachrichten.</translation> <translation>Konto deaktiviert, Sie erhalten keine Anrufe oder Nachrichten.</translation>
@ -695,76 +695,76 @@
<context> <context>
<name>CallCore</name> <name>CallCore</name>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="212"/> <location filename="../../core/call/CallCore.cpp" line="211"/>
<source>call_record_end_message</source> <source>call_record_end_message</source>
<extracomment>&quot;Enregistrement terminé&quot;</extracomment> <extracomment>&quot;Enregistrement terminé&quot;</extracomment>
<translation>Aufnahme beendet</translation> <translation>Aufnahme beendet</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="214"/> <location filename="../../core/call/CallCore.cpp" line="213"/>
<source>call_record_saved_in_file_message</source> <source>call_record_saved_in_file_message</source>
<extracomment>&quot;L&apos;appel a é enregistré dans le fichier : %1&quot;</extracomment> <extracomment>&quot;L&apos;appel a é enregistré dans le fichier : %1&quot;</extracomment>
<translation>Die Aufnahme wurde in der folgenden Datei gespeichert: %1</translation> <translation>Die Aufnahme wurde in der folgenden Datei gespeichert: %1</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="394"/> <location filename="../../core/call/CallCore.cpp" line="393"/>
<location filename="../../core/call/CallCore.cpp" line="419"/> <location filename="../../core/call/CallCore.cpp" line="418"/>
<source>call_stats_codec_label</source> <source>call_stats_codec_label</source>
<extracomment>&quot;Codec: %1 / %2 kHz&quot;</extracomment> <extracomment>&quot;Codec: %1 / %2 kHz&quot;</extracomment>
<translation>Codec: %1 / %2 kHz</translation> <translation>Codec: %1 / %2 kHz</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="398"/> <location filename="../../core/call/CallCore.cpp" line="397"/>
<location filename="../../core/call/CallCore.cpp" line="422"/> <location filename="../../core/call/CallCore.cpp" line="421"/>
<source>call_stats_bandwidth_label</source> <source>call_stats_bandwidth_label</source>
<extracomment>&quot;Bande passante : %1 %2 kbits/s %3 %4 kbits/s&quot;</extracomment> <extracomment>&quot;Bande passante : %1 %2 kbits/s %3 %4 kbits/s&quot;</extracomment>
<translation>Bandbreite: %1 %2 kbits/s %3 %4 kbits/s</translation> <translation>Bandbreite: %1 %2 kbits/s %3 %4 kbits/s</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="404"/> <location filename="../../core/call/CallCore.cpp" line="403"/>
<location filename="../../core/call/CallCore.cpp" line="427"/> <location filename="../../core/call/CallCore.cpp" line="426"/>
<source>call_stats_loss_rate_label</source> <source>call_stats_loss_rate_label</source>
<extracomment>&quot;Taux de perte: %1% %2%&quot;</extracomment> <extracomment>&quot;Taux de perte: %1% %2%&quot;</extracomment>
<translation>Verlustquote: %1% %2%</translation> <translation>Verlustquote: %1% %2%</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="409"/> <location filename="../../core/call/CallCore.cpp" line="408"/>
<source>call_stats_jitter_buffer_label</source> <source>call_stats_jitter_buffer_label</source>
<extracomment>&quot;Tampon de gigue: %1 ms&quot;</extracomment> <extracomment>&quot;Tampon de gigue: %1 ms&quot;</extracomment>
<translation>Jitter-Puffer: %1 ms</translation> <translation>Jitter-Puffer: %1 ms</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="436"/> <location filename="../../core/call/CallCore.cpp" line="435"/>
<source>call_stats_resolution_label</source> <source>call_stats_resolution_label</source>
<extracomment>&quot;Définition vidéo : %1 %2 %3 %4&quot;</extracomment> <extracomment>&quot;Définition vidéo : %1 %2 %3 %4&quot;</extracomment>
<translation>Videoauflösung: %1 %2 %3 %4</translation> <translation>Videoauflösung: %1 %2 %3 %4</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="442"/> <location filename="../../core/call/CallCore.cpp" line="441"/>
<source>call_stats_fps_label</source> <source>call_stats_fps_label</source>
<extracomment>&quot;FPS : %1 %2 %3 %4&quot;</extracomment> <extracomment>&quot;FPS : %1 %2 %3 %4&quot;</extracomment>
<translation>FPS : %1 %2 %3 %4</translation> <translation>FPS : %1 %2 %3 %4</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="655"/> <location filename="../../core/call/CallCore.cpp" line="654"/>
<source>media_encryption_dtls</source> <source>media_encryption_dtls</source>
<extracomment>DTLS</extracomment> <extracomment>DTLS</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="658"/> <location filename="../../core/call/CallCore.cpp" line="657"/>
<source>media_encryption_none</source> <source>media_encryption_none</source>
<extracomment>None</extracomment> <extracomment>None</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="661"/> <location filename="../../core/call/CallCore.cpp" line="660"/>
<source>media_encryption_srtp</source> <source>media_encryption_srtp</source>
<extracomment>SRTP</extracomment> <extracomment>SRTP</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="664"/> <location filename="../../core/call/CallCore.cpp" line="663"/>
<source>media_encryption_post_quantum</source> <source>media_encryption_post_quantum</source>
<extracomment>&quot;ZRTP - Post quantique&quot;</extracomment> <extracomment>&quot;ZRTP - Post quantique&quot;</extracomment>
<translation type="unfinished">Post-quantum ZRTP</translation> <translation type="unfinished">Post-quantum ZRTP</translation>
@ -1456,15 +1456,15 @@
<translation>%1 weiterleiten an</translation> <translation>%1 weiterleiten an</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="733"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="734"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="745"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="746"/>
<source>call_transfer_confirm_dialog_tittle</source> <source>call_transfer_confirm_dialog_tittle</source>
<extracomment>&quot;Confirmer le transfert&quot;</extracomment> <extracomment>&quot;Confirmer le transfert&quot;</extracomment>
<translation>Weiterleitung bestätigen</translation> <translation>Weiterleitung bestätigen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="735"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="736"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="746"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="747"/>
<source>call_transfer_confirm_dialog_message</source> <source>call_transfer_confirm_dialog_message</source>
<extracomment>&quot;Vous allez transférer %1 à %2.&quot;</extracomment> <extracomment>&quot;Vous allez transférer %1 à %2.&quot;</extracomment>
<translation>Sie werden %1 an %2 weiterleiten.</translation> <translation>Sie werden %1 an %2 weiterleiten.</translation>
@ -1477,7 +1477,7 @@
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="656"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="656"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1534"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1535"/>
<source>call_action_show_dialer</source> <source>call_action_show_dialer</source>
<extracomment>&quot;Pavé numérique&quot;</extracomment> <extracomment>&quot;Pavé numérique&quot;</extracomment>
<translation>Wähltastatur</translation> <translation>Wähltastatur</translation>
@ -1495,14 +1495,14 @@
<translation>Anrufliste</translation> <translation>Anrufliste</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="892"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="893"/>
<source>Merger tous les appels</source> <source>Merger tous les appels</source>
<extracomment>call_action_merge_calls</extracomment> <extracomment>call_action_merge_calls</extracomment>
<translation>Alle Anrufe zusammenführen</translation> <translation>Alle Anrufe zusammenführen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="671"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="671"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1609"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1610"/>
<source>call_action_go_to_settings</source> <source>call_action_go_to_settings</source>
<extracomment>&quot;Paramètres&quot;</extracomment> <extracomment>&quot;Paramètres&quot;</extracomment>
<translation>Einstellungen</translation> <translation>Einstellungen</translation>
@ -1514,34 +1514,34 @@
<translation>Bildschirm teilen</translation> <translation>Bildschirm teilen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1034"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1035"/>
<source>conference_share_link_title</source> <source>conference_share_link_title</source>
<extracomment>Partager le lien de la réunion</extracomment> <extracomment>Partager le lien de la réunion</extracomment>
<translation>Besprechungs-Link teilen</translation> <translation>Besprechungs-Link teilen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1038"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1039"/>
<source>copied</source> <source>copied</source>
<extracomment>Copié</extracomment> <extracomment>Copié</extracomment>
<translation>Kopiert</translation> <translation>Kopiert</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1040"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1041"/>
<source>information_popup_meeting_address_copied_to_clipboard</source> <source>information_popup_meeting_address_copied_to_clipboard</source>
<extracomment>Le lien de la réunion a é copié dans le presse-papier</extracomment> <extracomment>Le lien de la réunion a é copié dans le presse-papier</extracomment>
<translation>Der Besprechungs-Link wurde in die Zwischenablage kopiert</translation> <translation>Der Besprechungs-Link wurde in die Zwischenablage kopiert</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1049"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1050"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1053"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1054"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1059"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1060"/>
<source>conference_participants_list_title</source> <source>conference_participants_list_title</source>
<extracomment>&quot;Participants (%1)&quot;</extracomment> <extracomment>&quot;Participants (%1)&quot;</extracomment>
<translation>Teilnehmer (%1)</translation> <translation>Teilnehmer (%1)</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1080"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1081"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1088"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1089"/>
<source>group_call_participant_selected</source> <source>group_call_participant_selected</source>
<translation type="unfinished"> <translation type="unfinished">
<numerusform>1 ausgewählter Teilnehmer</numerusform> <numerusform>1 ausgewählter Teilnehmer</numerusform>
@ -1549,7 +1549,7 @@
</translation> </translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1087"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1088"/>
<source>meeting_schedule_add_participants_title</source> <source>meeting_schedule_add_participants_title</source>
<translation>Teilnehmer hinzufügen</translation> <translation>Teilnehmer hinzufügen</translation>
</message> </message>
@ -1566,132 +1566,132 @@
<translation>Statistiken</translation> <translation>Statistiken</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1230"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1231"/>
<source>call_action_end_call</source> <source>call_action_end_call</source>
<extracomment>&quot;Terminer l&apos;appel&quot;</extracomment> <extracomment>&quot;Terminer l&apos;appel&quot;</extracomment>
<translation>Anruf beenden</translation> <translation>Anruf beenden</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1261"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1262"/>
<source>call_action_resume_call</source> <source>call_action_resume_call</source>
<extracomment>&quot;Reprendre l&apos;appel&quot;</extracomment> <extracomment>&quot;Reprendre l&apos;appel&quot;</extracomment>
<translation>Anruf fortsetzen</translation> <translation>Anruf fortsetzen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1263"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1264"/>
<source>call_action_pause_call</source> <source>call_action_pause_call</source>
<extracomment>&quot;Mettre l&apos;appel en pause&quot;</extracomment> <extracomment>&quot;Mettre l&apos;appel en pause&quot;</extracomment>
<translation>Anruf pausieren</translation> <translation>Anruf pausieren</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1294"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1295"/>
<source>call_action_transfer_call</source> <source>call_action_transfer_call</source>
<extracomment>&quot;Transférer l&apos;appel&quot;</extracomment> <extracomment>&quot;Transférer l&apos;appel&quot;</extracomment>
<translation>Anruf weiterleiten</translation> <translation>Anruf weiterleiten</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1314"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1315"/>
<source>call_action_start_new_call_hint</source> <source>call_action_start_new_call_hint</source>
<extracomment>&quot;Initier un nouvel appel&quot;</extracomment> <extracomment>&quot;Initier un nouvel appel&quot;</extracomment>
<translation>Neuen Anruf starten</translation> <translation>Neuen Anruf starten</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1334"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1335"/>
<source>call_display_call_list_hint</source> <source>call_display_call_list_hint</source>
<extracomment>&quot;Afficher la liste d&apos;appels&quot;</extracomment> <extracomment>&quot;Afficher la liste d&apos;appels&quot;</extracomment>
<translation>Anrufliste anzeigen</translation> <translation>Anrufliste anzeigen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1367"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1368"/>
<source>call_deactivate_video_hint</source> <source>call_deactivate_video_hint</source>
<extracomment>&quot;Désactiver la vidéo&quot; &quot;Activer la vidéo&quot;</extracomment> <extracomment>&quot;Désactiver la vidéo&quot; &quot;Activer la vidéo&quot;</extracomment>
<translation>Video deaktivieren</translation> <translation>Video deaktivieren</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1367"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1368"/>
<source>call_activate_video_hint</source> <source>call_activate_video_hint</source>
<translation>Video aktivieren</translation> <translation>Video aktivieren</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1380"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1381"/>
<source>call_activate_microphone</source> <source>call_activate_microphone</source>
<extracomment>&quot;Activer le micro&quot;</extracomment> <extracomment>&quot;Activer le micro&quot;</extracomment>
<translation>Mikrofon aktivieren</translation> <translation>Mikrofon aktivieren</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1382"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1383"/>
<source>call_deactivate_microphone</source> <source>call_deactivate_microphone</source>
<extracomment>&quot;Désactiver le micro&quot;</extracomment> <extracomment>&quot;Désactiver le micro&quot;</extracomment>
<translation>Mikrofon stummschalten</translation> <translation>Mikrofon stummschalten</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1398"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1399"/>
<source>call_share_screen_hint</source> <source>call_share_screen_hint</source>
<extracomment>Partager l&apos;écran</extracomment> <extracomment>Partager l&apos;écran</extracomment>
<translation>Bildschirm teilen</translation> <translation>Bildschirm teilen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1416"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1417"/>
<source>call_open_chat_hint</source> <source>call_open_chat_hint</source>
<extracomment>Open chat</extracomment> <extracomment>Open chat</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1435"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1436"/>
<source>call_rise_hand_hint</source> <source>call_rise_hand_hint</source>
<extracomment>&quot;Lever la main&quot;</extracomment> <extracomment>&quot;Lever la main&quot;</extracomment>
<translation>Hand heben</translation> <translation>Hand heben</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1445"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1446"/>
<source>call_send_reaction_hint</source> <source>call_send_reaction_hint</source>
<extracomment>&quot;Envoyer une réaction&quot;</extracomment> <extracomment>&quot;Envoyer une réaction&quot;</extracomment>
<translation>Reaktion senden</translation> <translation>Reaktion senden</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1454"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1455"/>
<source>call_manage_participants_hint</source> <source>call_manage_participants_hint</source>
<extracomment>&quot;Gérer les participants&quot;</extracomment> <extracomment>&quot;Gérer les participants&quot;</extracomment>
<translation>Teilnehmer verwalten</translation> <translation>Teilnehmer verwalten</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1473"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1474"/>
<source>call_more_options_hint</source> <source>call_more_options_hint</source>
<extracomment>&quot;Plus d&apos;options&quot;</extracomment> <extracomment>&quot;Plus d&apos;options&quot;</extracomment>
<translation>Weitere Optionen</translation> <translation>Weitere Optionen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1502"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1503"/>
<source>call_action_change_conference_layout</source> <source>call_action_change_conference_layout</source>
<extracomment>&quot;Modifier la disposition&quot;</extracomment> <extracomment>&quot;Modifier la disposition&quot;</extracomment>
<translation>Layout ändern</translation> <translation>Layout ändern</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1514"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1515"/>
<source>call_action_full_screen</source> <source>call_action_full_screen</source>
<extracomment>&quot;Mode Plein écran&quot;</extracomment> <extracomment>&quot;Mode Plein écran&quot;</extracomment>
<translation>Vollbildmodus</translation> <translation>Vollbildmodus</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1563"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1564"/>
<source>call_action_stop_recording</source> <source>call_action_stop_recording</source>
<extracomment>&quot;Terminer l&apos;enregistrement&quot;</extracomment> <extracomment>&quot;Terminer l&apos;enregistrement&quot;</extracomment>
<translation>Aufnahme beenden</translation> <translation>Aufnahme beenden</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1565"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1566"/>
<source>call_action_record</source> <source>call_action_record</source>
<extracomment>&quot;Enregistrer l&apos;appel&quot;</extracomment> <extracomment>&quot;Enregistrer l&apos;appel&quot;</extracomment>
<translation>Anruf aufnehmen</translation> <translation>Anruf aufnehmen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1591"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1592"/>
<source>call_activate_speaker_hint</source> <source>call_activate_speaker_hint</source>
<extracomment>&quot;Activer le son&quot;</extracomment> <extracomment>&quot;Activer le son&quot;</extracomment>
<translation type="unfinished">Lautsprecher aktivieren</translation> <translation type="unfinished">Lautsprecher aktivieren</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1593"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1594"/>
<source>call_deactivate_speaker_hint</source> <source>call_deactivate_speaker_hint</source>
<extracomment>&quot;Désactiver le son&quot;</extracomment> <extracomment>&quot;Désactiver le son&quot;</extracomment>
<translation type="unfinished">Lautsprecher stummschalten</translation> <translation type="unfinished">Lautsprecher stummschalten</translation>
@ -1822,13 +1822,13 @@
<context> <context>
<name>ChatCore</name> <name>ChatCore</name>
<message> <message>
<location filename="../../core/chat/ChatCore.cpp" line="177"/> <location filename="../../core/chat/ChatCore.cpp" line="176"/>
<source>info_toast_deleted_title</source> <source>info_toast_deleted_title</source>
<extracomment>Deleted</extracomment> <extracomment>Deleted</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../core/chat/ChatCore.cpp" line="179"/> <location filename="../../core/chat/ChatCore.cpp" line="178"/>
<source>info_toast_deleted_message_history</source> <source>info_toast_deleted_message_history</source>
<extracomment>Message history has been deleted</extracomment> <extracomment>Message history has been deleted</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@ -2260,31 +2260,31 @@ Error</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="286"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="287"/>
<source>chat_start_group_chat_title</source> <source>chat_start_group_chat_title</source>
<extracomment>&quot;Nouveau groupe&quot;</extracomment> <extracomment>&quot;Nouveau groupe&quot;</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="288"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="289"/>
<source>chat_action_start_group_chat</source> <source>chat_action_start_group_chat</source>
<extracomment>&quot;Créer&quot;</extracomment> <extracomment>&quot;Créer&quot;</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="314"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="315"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="318"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="319"/>
<source>information_popup_error_title</source> <source>information_popup_error_title</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="316"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="317"/>
<source>group_chat_error_must_have_name</source> <source>group_chat_error_must_have_name</source>
<extracomment>&quot;Un nom doit être donné au groupe</extracomment> <extracomment>&quot;Un nom doit être donné au groupe</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="320"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="321"/>
<source>group_call_error_not_connected</source> <source>group_call_error_not_connected</source>
<extracomment>&quot;Vous n&apos;etes pas connecté&quot;</extracomment> <extracomment>&quot;Vous n&apos;etes pas connecté&quot;</extracomment>
<translation type="unfinished">Sie sind nicht verbunden</translation> <translation type="unfinished">Sie sind nicht verbunden</translation>
@ -2347,13 +2347,13 @@ Error</extracomment>
<context> <context>
<name>ConferenceInfoCore</name> <name>ConferenceInfoCore</name>
<message> <message>
<location filename="../../core/conference/ConferenceInfoCore.cpp" line="572"/> <location filename="../../core/conference/ConferenceInfoCore.cpp" line="571"/>
<source>information_popup_error_title</source> <source>information_popup_error_title</source>
<extracomment>&quot;Erreur&quot;</extracomment> <extracomment>&quot;Erreur&quot;</extracomment>
<translation>Fehler</translation> <translation>Fehler</translation>
</message> </message>
<message> <message>
<location filename="../../core/conference/ConferenceInfoCore.cpp" line="574"/> <location filename="../../core/conference/ConferenceInfoCore.cpp" line="573"/>
<source>information_popup_disconnected_account_message</source> <source>information_popup_disconnected_account_message</source>
<extracomment>&quot;Votre compte est déconnecté&quot;</extracomment> <extracomment>&quot;Votre compte est déconnecté&quot;</extracomment>
<translation>Ihr Konto ist getrennt</translation> <translation>Ihr Konto ist getrennt</translation>
@ -3058,7 +3058,7 @@ Error</extracomment>
<context> <context>
<name>CreationFormLayout</name> <name>CreationFormLayout</name>
<message> <message>
<location filename="../../view/Control/Container/CreationFormLayout.qml" line="44"/> <location filename="../../view/Control/Container/CreationFormLayout.qml" line="45"/>
<source>search_bar_look_for_contact_text</source> <source>search_bar_look_for_contact_text</source>
<extracomment>&quot;Rechercher un contact&quot;</extracomment> <extracomment>&quot;Rechercher un contact&quot;</extracomment>
<translation type="unfinished">Kontakt suchen</translation> <translation type="unfinished">Kontakt suchen</translation>
@ -5238,49 +5238,49 @@ Pour les activer dans un projet commercial, merci de nous contacter.</source>
<context> <context>
<name>ToolModel</name> <name>ToolModel</name>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="300"/> <location filename="../../model/tool/ToolModel.cpp" line="298"/>
<source>call_error_uninterpretable_sip_address</source> <source>call_error_uninterpretable_sip_address</source>
<extracomment>&quot;The calling address is not an interpretable SIP address : %1</extracomment> <extracomment>&quot;The calling address is not an interpretable SIP address : %1</extracomment>
<translation>Die Anrufadresse ist keine interpretierbare SIP-Adresse: %1</translation> <translation>Die Anrufadresse ist keine interpretierbare SIP-Adresse: %1</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="372"/> <location filename="../../model/tool/ToolModel.cpp" line="370"/>
<source>group_call_error_no_account</source> <source>group_call_error_no_account</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="397"/> <location filename="../../model/tool/ToolModel.cpp" line="395"/>
<source>group_call_error_participants_invite</source> <source>group_call_error_participants_invite</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="401"/> <location filename="../../model/tool/ToolModel.cpp" line="399"/>
<source>group_call_error_creation</source> <source>group_call_error_creation</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="501"/> <location filename="../../model/tool/ToolModel.cpp" line="499"/>
<source>voice_recording_duration</source> <source>voice_recording_duration</source>
<extracomment>&quot;Voice recording (%1)&quot; : %1 is the duration formated in mm:ss</extracomment> <extracomment>&quot;Voice recording (%1)&quot; : %1 is the duration formated in mm:ss</extracomment>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="509"/> <location filename="../../model/tool/ToolModel.cpp" line="507"/>
<source>conference_invitation</source> <source>conference_invitation</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="511"/> <location filename="../../model/tool/ToolModel.cpp" line="509"/>
<source>conference_invitation_updated</source> <source>conference_invitation_updated</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="513"/> <location filename="../../model/tool/ToolModel.cpp" line="511"/>
<source>conference_invitation_cancelled</source> <source>conference_invitation_cancelled</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="574"/> <location filename="../../model/tool/ToolModel.cpp" line="572"/>
<source>unknown_audio_device_name</source> <source>unknown_audio_device_name</source>
<translation>Unbekannter Gerätename</translation> <translation>Unbekannter Gerätename</translation>
</message> </message>

View file

@ -27,45 +27,45 @@
<context> <context>
<name>AccountCore</name> <name>AccountCore</name>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="444"/> <location filename="../../core/account/AccountCore.cpp" line="445"/>
<source>drawer_menu_account_connection_status_connected</source> <source>drawer_menu_account_connection_status_connected</source>
<extracomment>&quot;Connecté&quot;</extracomment> <extracomment>&quot;Connecté&quot;</extracomment>
<translation>Connected</translation> <translation>Connected</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="447"/> <location filename="../../core/account/AccountCore.cpp" line="448"/>
<source>drawer_menu_account_connection_status_refreshing</source> <source>drawer_menu_account_connection_status_refreshing</source>
<translation>Refreshing</translation> <translation>Refreshing</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="450"/> <location filename="../../core/account/AccountCore.cpp" line="451"/>
<source>drawer_menu_account_connection_status_progress</source> <source>drawer_menu_account_connection_status_progress</source>
<translation>Connecting</translation> <translation>Connecting</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="453"/> <location filename="../../core/account/AccountCore.cpp" line="454"/>
<source>drawer_menu_account_connection_status_failed</source> <source>drawer_menu_account_connection_status_failed</source>
<translation>Error</translation> <translation>Error</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="457"/> <location filename="../../core/account/AccountCore.cpp" line="458"/>
<source>drawer_menu_account_connection_status_cleared</source> <source>drawer_menu_account_connection_status_cleared</source>
<translation>Disabled</translation> <translation>Disabled</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="491"/> <location filename="../../core/account/AccountCore.cpp" line="492"/>
<source>manage_account_status_connected_summary</source> <source>manage_account_status_connected_summary</source>
<extracomment>&quot;Vous êtes en ligne et joignable.&quot;</extracomment> <extracomment>&quot;Vous êtes en ligne et joignable.&quot;</extracomment>
<translation>You are online and reachable.</translation> <translation>You are online and reachable.</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="494"/> <location filename="../../core/account/AccountCore.cpp" line="495"/>
<source>manage_account_status_failed_summary</source> <source>manage_account_status_failed_summary</source>
<extracomment>&quot;Erreur de connexion, vérifiez vos paramètres.&quot;</extracomment> <extracomment>&quot;Erreur de connexion, vérifiez vos paramètres.&quot;</extracomment>
<translation>Connection error, check your settings.</translation> <translation>Connection error, check your settings.</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="498"/> <location filename="../../core/account/AccountCore.cpp" line="499"/>
<source>manage_account_status_cleared_summary</source> <source>manage_account_status_cleared_summary</source>
<extracomment>&quot;Compte désactivé, vous ne recevrez ni appel ni message.&quot;</extracomment> <extracomment>&quot;Compte désactivé, vous ne recevrez ni appel ni message.&quot;</extracomment>
<translation>Account disabled, you will not receive calls or messages.</translation> <translation>Account disabled, you will not receive calls or messages.</translation>
@ -695,76 +695,76 @@
<context> <context>
<name>CallCore</name> <name>CallCore</name>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="212"/> <location filename="../../core/call/CallCore.cpp" line="211"/>
<source>call_record_end_message</source> <source>call_record_end_message</source>
<extracomment>&quot;Enregistrement terminé&quot;</extracomment> <extracomment>&quot;Enregistrement terminé&quot;</extracomment>
<translation>Recording ended</translation> <translation>Recording ended</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="214"/> <location filename="../../core/call/CallCore.cpp" line="213"/>
<source>call_record_saved_in_file_message</source> <source>call_record_saved_in_file_message</source>
<extracomment>&quot;L&apos;appel a é enregistré dans le fichier : %1&quot;</extracomment> <extracomment>&quot;L&apos;appel a é enregistré dans le fichier : %1&quot;</extracomment>
<translation>Recording has been saved in file : %1</translation> <translation>Recording has been saved in file : %1</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="394"/> <location filename="../../core/call/CallCore.cpp" line="393"/>
<location filename="../../core/call/CallCore.cpp" line="419"/> <location filename="../../core/call/CallCore.cpp" line="418"/>
<source>call_stats_codec_label</source> <source>call_stats_codec_label</source>
<extracomment>&quot;Codec: %1 / %2 kHz&quot;</extracomment> <extracomment>&quot;Codec: %1 / %2 kHz&quot;</extracomment>
<translation>Codec: %1 / %2 kHz</translation> <translation>Codec: %1 / %2 kHz</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="398"/> <location filename="../../core/call/CallCore.cpp" line="397"/>
<location filename="../../core/call/CallCore.cpp" line="422"/> <location filename="../../core/call/CallCore.cpp" line="421"/>
<source>call_stats_bandwidth_label</source> <source>call_stats_bandwidth_label</source>
<extracomment>&quot;Bande passante : %1 %2 kbits/s %3 %4 kbits/s&quot;</extracomment> <extracomment>&quot;Bande passante : %1 %2 kbits/s %3 %4 kbits/s&quot;</extracomment>
<translation>Bandwidth : %1 %2 kbits/s %3 %4 kbits/s</translation> <translation>Bandwidth : %1 %2 kbits/s %3 %4 kbits/s</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="404"/> <location filename="../../core/call/CallCore.cpp" line="403"/>
<location filename="../../core/call/CallCore.cpp" line="427"/> <location filename="../../core/call/CallCore.cpp" line="426"/>
<source>call_stats_loss_rate_label</source> <source>call_stats_loss_rate_label</source>
<extracomment>&quot;Taux de perte: %1% %2%&quot;</extracomment> <extracomment>&quot;Taux de perte: %1% %2%&quot;</extracomment>
<translation>Loss rate: %1% %2%</translation> <translation>Loss rate: %1% %2%</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="409"/> <location filename="../../core/call/CallCore.cpp" line="408"/>
<source>call_stats_jitter_buffer_label</source> <source>call_stats_jitter_buffer_label</source>
<extracomment>&quot;Tampon de gigue: %1 ms&quot;</extracomment> <extracomment>&quot;Tampon de gigue: %1 ms&quot;</extracomment>
<translation>Jitter buffer : %1 ms</translation> <translation>Jitter buffer : %1 ms</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="436"/> <location filename="../../core/call/CallCore.cpp" line="435"/>
<source>call_stats_resolution_label</source> <source>call_stats_resolution_label</source>
<extracomment>&quot;Définition vidéo : %1 %2 %3 %4&quot;</extracomment> <extracomment>&quot;Définition vidéo : %1 %2 %3 %4&quot;</extracomment>
<translation>Video resolution: %1 %2 %3 %4</translation> <translation>Video resolution: %1 %2 %3 %4</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="442"/> <location filename="../../core/call/CallCore.cpp" line="441"/>
<source>call_stats_fps_label</source> <source>call_stats_fps_label</source>
<extracomment>&quot;FPS : %1 %2 %3 %4&quot;</extracomment> <extracomment>&quot;FPS : %1 %2 %3 %4&quot;</extracomment>
<translation>FPS : %1 %2 %3 %4</translation> <translation>FPS : %1 %2 %3 %4</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="655"/> <location filename="../../core/call/CallCore.cpp" line="654"/>
<source>media_encryption_dtls</source> <source>media_encryption_dtls</source>
<extracomment>DTLS</extracomment> <extracomment>DTLS</extracomment>
<translation>DTLS</translation> <translation>DTLS</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="658"/> <location filename="../../core/call/CallCore.cpp" line="657"/>
<source>media_encryption_none</source> <source>media_encryption_none</source>
<extracomment>None</extracomment> <extracomment>None</extracomment>
<translation>None</translation> <translation>None</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="661"/> <location filename="../../core/call/CallCore.cpp" line="660"/>
<source>media_encryption_srtp</source> <source>media_encryption_srtp</source>
<extracomment>SRTP</extracomment> <extracomment>SRTP</extracomment>
<translation>SRTP</translation> <translation>SRTP</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="664"/> <location filename="../../core/call/CallCore.cpp" line="663"/>
<source>media_encryption_post_quantum</source> <source>media_encryption_post_quantum</source>
<extracomment>&quot;ZRTP - Post quantique&quot;</extracomment> <extracomment>&quot;ZRTP - Post quantique&quot;</extracomment>
<translation>Post quantum ZRTP</translation> <translation>Post quantum ZRTP</translation>
@ -1418,15 +1418,15 @@
<translation>Transfer %1 to</translation> <translation>Transfer %1 to</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="733"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="734"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="745"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="746"/>
<source>call_transfer_confirm_dialog_tittle</source> <source>call_transfer_confirm_dialog_tittle</source>
<extracomment>&quot;Confirmer le transfert&quot;</extracomment> <extracomment>&quot;Confirmer le transfert&quot;</extracomment>
<translation>Confirm transfer</translation> <translation>Confirm transfer</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="735"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="736"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="746"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="747"/>
<source>call_transfer_confirm_dialog_message</source> <source>call_transfer_confirm_dialog_message</source>
<extracomment>&quot;Vous allez transférer %1 à %2.&quot;</extracomment> <extracomment>&quot;Vous allez transférer %1 à %2.&quot;</extracomment>
<translation>You are going to transfer %1 to %2.</translation> <translation>You are going to transfer %1 to %2.</translation>
@ -1439,7 +1439,7 @@
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="656"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="656"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1534"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1535"/>
<source>call_action_show_dialer</source> <source>call_action_show_dialer</source>
<extracomment>&quot;Pavé numérique&quot;</extracomment> <extracomment>&quot;Pavé numérique&quot;</extracomment>
<translation>Dialer</translation> <translation>Dialer</translation>
@ -1457,14 +1457,14 @@
<translation>Call list</translation> <translation>Call list</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="892"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="893"/>
<source>Merger tous les appels</source> <source>Merger tous les appels</source>
<extracomment>call_action_merge_calls</extracomment> <extracomment>call_action_merge_calls</extracomment>
<translation>Merge all calls</translation> <translation>Merge all calls</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="671"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="671"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1609"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1610"/>
<source>call_action_go_to_settings</source> <source>call_action_go_to_settings</source>
<extracomment>&quot;Paramètres&quot;</extracomment> <extracomment>&quot;Paramètres&quot;</extracomment>
<translation>Settings</translation> <translation>Settings</translation>
@ -1476,34 +1476,34 @@
<translation>Share your screen</translation> <translation>Share your screen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1034"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1035"/>
<source>conference_share_link_title</source> <source>conference_share_link_title</source>
<extracomment>Partager le lien de la réunion</extracomment> <extracomment>Partager le lien de la réunion</extracomment>
<translation>Share meeting link</translation> <translation>Share meeting link</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1038"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1039"/>
<source>copied</source> <source>copied</source>
<extracomment>Copié</extracomment> <extracomment>Copié</extracomment>
<translation>Copied</translation> <translation>Copied</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1040"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1041"/>
<source>information_popup_meeting_address_copied_to_clipboard</source> <source>information_popup_meeting_address_copied_to_clipboard</source>
<extracomment>Le lien de la réunion a é copié dans le presse-papier</extracomment> <extracomment>Le lien de la réunion a é copié dans le presse-papier</extracomment>
<translation>Meeting link has been copied to the clipboard</translation> <translation>Meeting link has been copied to the clipboard</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1049"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1050"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1053"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1054"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1059"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1060"/>
<source>conference_participants_list_title</source> <source>conference_participants_list_title</source>
<extracomment>&quot;Participants (%1)&quot;</extracomment> <extracomment>&quot;Participants (%1)&quot;</extracomment>
<translation>Participants (%1)</translation> <translation>Participants (%1)</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1080"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1081"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1088"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1089"/>
<source>group_call_participant_selected</source> <source>group_call_participant_selected</source>
<translation> <translation>
<numerusform>%1 selected participant</numerusform> <numerusform>%1 selected participant</numerusform>
@ -1511,7 +1511,7 @@
</translation> </translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1087"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1088"/>
<source>meeting_schedule_add_participants_title</source> <source>meeting_schedule_add_participants_title</source>
<translation>Add participants</translation> <translation>Add participants</translation>
</message> </message>
@ -1528,132 +1528,132 @@
<translation>Statistics</translation> <translation>Statistics</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1230"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1231"/>
<source>call_action_end_call</source> <source>call_action_end_call</source>
<extracomment>&quot;Terminer l&apos;appel&quot;</extracomment> <extracomment>&quot;Terminer l&apos;appel&quot;</extracomment>
<translation>End call</translation> <translation>End call</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1261"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1262"/>
<source>call_action_resume_call</source> <source>call_action_resume_call</source>
<extracomment>&quot;Reprendre l&apos;appel&quot;</extracomment> <extracomment>&quot;Reprendre l&apos;appel&quot;</extracomment>
<translation>Resume call</translation> <translation>Resume call</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1263"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1264"/>
<source>call_action_pause_call</source> <source>call_action_pause_call</source>
<extracomment>&quot;Mettre l&apos;appel en pause&quot;</extracomment> <extracomment>&quot;Mettre l&apos;appel en pause&quot;</extracomment>
<translation>Pause call</translation> <translation>Pause call</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1294"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1295"/>
<source>call_action_transfer_call</source> <source>call_action_transfer_call</source>
<extracomment>&quot;Transférer l&apos;appel&quot;</extracomment> <extracomment>&quot;Transférer l&apos;appel&quot;</extracomment>
<translation>Transfer call</translation> <translation>Transfer call</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1314"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1315"/>
<source>call_action_start_new_call_hint</source> <source>call_action_start_new_call_hint</source>
<extracomment>&quot;Initier un nouvel appel&quot;</extracomment> <extracomment>&quot;Initier un nouvel appel&quot;</extracomment>
<translation>Start new call</translation> <translation>Start new call</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1334"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1335"/>
<source>call_display_call_list_hint</source> <source>call_display_call_list_hint</source>
<extracomment>&quot;Afficher la liste d&apos;appels&quot;</extracomment> <extracomment>&quot;Afficher la liste d&apos;appels&quot;</extracomment>
<translation>View call list</translation> <translation>View call list</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1367"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1368"/>
<source>call_deactivate_video_hint</source> <source>call_deactivate_video_hint</source>
<extracomment>&quot;Désactiver la vidéo&quot; &quot;Activer la vidéo&quot;</extracomment> <extracomment>&quot;Désactiver la vidéo&quot; &quot;Activer la vidéo&quot;</extracomment>
<translation>Turn off video</translation> <translation>Turn off video</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1367"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1368"/>
<source>call_activate_video_hint</source> <source>call_activate_video_hint</source>
<translation>Enable video</translation> <translation>Enable video</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1380"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1381"/>
<source>call_activate_microphone</source> <source>call_activate_microphone</source>
<extracomment>&quot;Activer le micro&quot;</extracomment> <extracomment>&quot;Activer le micro&quot;</extracomment>
<translation>Activate microphone</translation> <translation>Activate microphone</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1382"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1383"/>
<source>call_deactivate_microphone</source> <source>call_deactivate_microphone</source>
<extracomment>&quot;Désactiver le micro&quot;</extracomment> <extracomment>&quot;Désactiver le micro&quot;</extracomment>
<translation>Mute microphone</translation> <translation>Mute microphone</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1398"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1399"/>
<source>call_share_screen_hint</source> <source>call_share_screen_hint</source>
<extracomment>Partager l&apos;écran</extracomment> <extracomment>Partager l&apos;écran</extracomment>
<translation>Share screen</translation> <translation>Share screen</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1416"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1417"/>
<source>call_open_chat_hint</source> <source>call_open_chat_hint</source>
<extracomment>Open chat</extracomment> <extracomment>Open chat</extracomment>
<translation>Open conversation</translation> <translation>Open conversation</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1435"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1436"/>
<source>call_rise_hand_hint</source> <source>call_rise_hand_hint</source>
<extracomment>&quot;Lever la main&quot;</extracomment> <extracomment>&quot;Lever la main&quot;</extracomment>
<translation>Rise hand</translation> <translation>Rise hand</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1445"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1446"/>
<source>call_send_reaction_hint</source> <source>call_send_reaction_hint</source>
<extracomment>&quot;Envoyer une réaction&quot;</extracomment> <extracomment>&quot;Envoyer une réaction&quot;</extracomment>
<translation>Send reaction</translation> <translation>Send reaction</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1454"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1455"/>
<source>call_manage_participants_hint</source> <source>call_manage_participants_hint</source>
<extracomment>&quot;Gérer les participants&quot;</extracomment> <extracomment>&quot;Gérer les participants&quot;</extracomment>
<translation>Manage participants</translation> <translation>Manage participants</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1473"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1474"/>
<source>call_more_options_hint</source> <source>call_more_options_hint</source>
<extracomment>&quot;Plus d&apos;options&quot;</extracomment> <extracomment>&quot;Plus d&apos;options&quot;</extracomment>
<translation>More options</translation> <translation>More options</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1502"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1503"/>
<source>call_action_change_conference_layout</source> <source>call_action_change_conference_layout</source>
<extracomment>&quot;Modifier la disposition&quot;</extracomment> <extracomment>&quot;Modifier la disposition&quot;</extracomment>
<translation>Change layout</translation> <translation>Change layout</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1514"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1515"/>
<source>call_action_full_screen</source> <source>call_action_full_screen</source>
<extracomment>&quot;Mode Plein écran&quot;</extracomment> <extracomment>&quot;Mode Plein écran&quot;</extracomment>
<translation>Full screen mode</translation> <translation>Full screen mode</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1563"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1564"/>
<source>call_action_stop_recording</source> <source>call_action_stop_recording</source>
<extracomment>&quot;Terminer l&apos;enregistrement&quot;</extracomment> <extracomment>&quot;Terminer l&apos;enregistrement&quot;</extracomment>
<translation>End recording</translation> <translation>End recording</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1565"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1566"/>
<source>call_action_record</source> <source>call_action_record</source>
<extracomment>&quot;Enregistrer l&apos;appel&quot;</extracomment> <extracomment>&quot;Enregistrer l&apos;appel&quot;</extracomment>
<translation>Record call</translation> <translation>Record call</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1591"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1592"/>
<source>call_activate_speaker_hint</source> <source>call_activate_speaker_hint</source>
<extracomment>&quot;Activer le son&quot;</extracomment> <extracomment>&quot;Activer le son&quot;</extracomment>
<translation>Activate speaker</translation> <translation>Activate speaker</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1593"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1594"/>
<source>call_deactivate_speaker_hint</source> <source>call_deactivate_speaker_hint</source>
<extracomment>&quot;Désactiver le son&quot;</extracomment> <extracomment>&quot;Désactiver le son&quot;</extracomment>
<translation>Mute speaker</translation> <translation>Mute speaker</translation>
@ -1784,13 +1784,13 @@
<context> <context>
<name>ChatCore</name> <name>ChatCore</name>
<message> <message>
<location filename="../../core/chat/ChatCore.cpp" line="177"/> <location filename="../../core/chat/ChatCore.cpp" line="176"/>
<source>info_toast_deleted_title</source> <source>info_toast_deleted_title</source>
<extracomment>Deleted</extracomment> <extracomment>Deleted</extracomment>
<translation>Deleted</translation> <translation>Deleted</translation>
</message> </message>
<message> <message>
<location filename="../../core/chat/ChatCore.cpp" line="179"/> <location filename="../../core/chat/ChatCore.cpp" line="178"/>
<source>info_toast_deleted_message_history</source> <source>info_toast_deleted_message_history</source>
<extracomment>Message history has been deleted</extracomment> <extracomment>Message history has been deleted</extracomment>
<translation>Message history has been deleted</translation> <translation>Message history has been deleted</translation>
@ -2223,31 +2223,31 @@ Only your correspondent can decrypt them.</translation>
<translation>New conversation</translation> <translation>New conversation</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="286"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="287"/>
<source>chat_start_group_chat_title</source> <source>chat_start_group_chat_title</source>
<extracomment>&quot;Nouveau groupe&quot;</extracomment> <extracomment>&quot;Nouveau groupe&quot;</extracomment>
<translation>New group</translation> <translation>New group</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="288"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="289"/>
<source>chat_action_start_group_chat</source> <source>chat_action_start_group_chat</source>
<extracomment>&quot;Créer&quot;</extracomment> <extracomment>&quot;Créer&quot;</extracomment>
<translation>Create</translation> <translation>Create</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="314"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="315"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="318"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="319"/>
<source>information_popup_error_title</source> <source>information_popup_error_title</source>
<translation>Error</translation> <translation>Error</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="316"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="317"/>
<source>group_chat_error_must_have_name</source> <source>group_chat_error_must_have_name</source>
<extracomment>&quot;Un nom doit être donné au groupe</extracomment> <extracomment>&quot;Un nom doit être donné au groupe</extracomment>
<translation>A name must be set for the group</translation> <translation>A name must be set for the group</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="320"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="321"/>
<source>group_call_error_not_connected</source> <source>group_call_error_not_connected</source>
<extracomment>&quot;Vous n&apos;etes pas connecté&quot;</extracomment> <extracomment>&quot;Vous n&apos;etes pas connecté&quot;</extracomment>
<translation>You are not connected</translation> <translation>You are not connected</translation>
@ -2310,13 +2310,13 @@ Only your correspondent can decrypt them.</translation>
<context> <context>
<name>ConferenceInfoCore</name> <name>ConferenceInfoCore</name>
<message> <message>
<location filename="../../core/conference/ConferenceInfoCore.cpp" line="572"/> <location filename="../../core/conference/ConferenceInfoCore.cpp" line="571"/>
<source>information_popup_error_title</source> <source>information_popup_error_title</source>
<extracomment>&quot;Erreur&quot;</extracomment> <extracomment>&quot;Erreur&quot;</extracomment>
<translation>Error</translation> <translation>Error</translation>
</message> </message>
<message> <message>
<location filename="../../core/conference/ConferenceInfoCore.cpp" line="574"/> <location filename="../../core/conference/ConferenceInfoCore.cpp" line="573"/>
<source>information_popup_disconnected_account_message</source> <source>information_popup_disconnected_account_message</source>
<extracomment>&quot;Votre compte est déconnecté&quot;</extracomment> <extracomment>&quot;Votre compte est déconnecté&quot;</extracomment>
<translation>Your account is disconnected</translation> <translation>Your account is disconnected</translation>
@ -2971,7 +2971,7 @@ Only your correspondent can decrypt them.</translation>
<context> <context>
<name>CreationFormLayout</name> <name>CreationFormLayout</name>
<message> <message>
<location filename="../../view/Control/Container/CreationFormLayout.qml" line="44"/> <location filename="../../view/Control/Container/CreationFormLayout.qml" line="45"/>
<source>search_bar_look_for_contact_text</source> <source>search_bar_look_for_contact_text</source>
<extracomment>&quot;Rechercher un contact&quot;</extracomment> <extracomment>&quot;Rechercher un contact&quot;</extracomment>
<translation>Find contact</translation> <translation>Find contact</translation>
@ -5127,49 +5127,49 @@ To enable them in a commercial project, please contact us.</translation>
<context> <context>
<name>ToolModel</name> <name>ToolModel</name>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="300"/> <location filename="../../model/tool/ToolModel.cpp" line="298"/>
<source>call_error_uninterpretable_sip_address</source> <source>call_error_uninterpretable_sip_address</source>
<extracomment>&quot;The calling address is not an interpretable SIP address : %1</extracomment> <extracomment>&quot;The calling address is not an interpretable SIP address : %1</extracomment>
<translation>The calling address is not an interpretable SIP address : %1</translation> <translation>The calling address is not an interpretable SIP address : %1</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="372"/> <location filename="../../model/tool/ToolModel.cpp" line="370"/>
<source>group_call_error_no_account</source> <source>group_call_error_no_account</source>
<translation>No default account found, can&apos;t create group call</translation> <translation>No default account found, can&apos;t create group call</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="397"/> <location filename="../../model/tool/ToolModel.cpp" line="395"/>
<source>group_call_error_participants_invite</source> <source>group_call_error_participants_invite</source>
<translation>Couldn&apos;t invite participants to group call</translation> <translation>Couldn&apos;t invite participants to group call</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="401"/> <location filename="../../model/tool/ToolModel.cpp" line="399"/>
<source>group_call_error_creation</source> <source>group_call_error_creation</source>
<translation>Group call couldn&apos;t be created</translation> <translation>Group call couldn&apos;t be created</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="501"/> <location filename="../../model/tool/ToolModel.cpp" line="499"/>
<source>voice_recording_duration</source> <source>voice_recording_duration</source>
<extracomment>&quot;Voice recording (%1)&quot; : %1 is the duration formated in mm:ss</extracomment> <extracomment>&quot;Voice recording (%1)&quot; : %1 is the duration formated in mm:ss</extracomment>
<translation>Voice recording (%1)</translation> <translation>Voice recording (%1)</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="574"/> <location filename="../../model/tool/ToolModel.cpp" line="572"/>
<source>unknown_audio_device_name</source> <source>unknown_audio_device_name</source>
<translation>Unknown device name</translation> <translation>Unknown device name</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="509"/> <location filename="../../model/tool/ToolModel.cpp" line="507"/>
<source>conference_invitation</source> <source>conference_invitation</source>
<translation>Meeting invitation</translation> <translation>Meeting invitation</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="513"/> <location filename="../../model/tool/ToolModel.cpp" line="511"/>
<source>conference_invitation_cancelled</source> <source>conference_invitation_cancelled</source>
<translation>Meeting cancellation</translation> <translation>Meeting cancellation</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="511"/> <location filename="../../model/tool/ToolModel.cpp" line="509"/>
<source>conference_invitation_updated</source> <source>conference_invitation_updated</source>
<translation>Meeting modification</translation> <translation>Meeting modification</translation>
</message> </message>

View file

@ -27,45 +27,45 @@
<context> <context>
<name>AccountCore</name> <name>AccountCore</name>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="444"/> <location filename="../../core/account/AccountCore.cpp" line="445"/>
<source>drawer_menu_account_connection_status_connected</source> <source>drawer_menu_account_connection_status_connected</source>
<extracomment>&quot;Connecté&quot;</extracomment> <extracomment>&quot;Connecté&quot;</extracomment>
<translation>Connecté</translation> <translation>Connecté</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="447"/> <location filename="../../core/account/AccountCore.cpp" line="448"/>
<source>drawer_menu_account_connection_status_refreshing</source> <source>drawer_menu_account_connection_status_refreshing</source>
<translation>En cours de rafraîchissement</translation> <translation>En cours de rafraîchissement</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="450"/> <location filename="../../core/account/AccountCore.cpp" line="451"/>
<source>drawer_menu_account_connection_status_progress</source> <source>drawer_menu_account_connection_status_progress</source>
<translation>Connexion</translation> <translation>Connexion</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="453"/> <location filename="../../core/account/AccountCore.cpp" line="454"/>
<source>drawer_menu_account_connection_status_failed</source> <source>drawer_menu_account_connection_status_failed</source>
<translation>Erreur</translation> <translation>Erreur</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="457"/> <location filename="../../core/account/AccountCore.cpp" line="458"/>
<source>drawer_menu_account_connection_status_cleared</source> <source>drawer_menu_account_connection_status_cleared</source>
<translation>Désactivé</translation> <translation>Désactivé</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="491"/> <location filename="../../core/account/AccountCore.cpp" line="492"/>
<source>manage_account_status_connected_summary</source> <source>manage_account_status_connected_summary</source>
<extracomment>&quot;Vous êtes en ligne et joignable.&quot;</extracomment> <extracomment>&quot;Vous êtes en ligne et joignable.&quot;</extracomment>
<translation>Vous êtes en ligne et joignable.</translation> <translation>Vous êtes en ligne et joignable.</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="494"/> <location filename="../../core/account/AccountCore.cpp" line="495"/>
<source>manage_account_status_failed_summary</source> <source>manage_account_status_failed_summary</source>
<extracomment>&quot;Erreur de connexion, vérifiez vos paramètres.&quot;</extracomment> <extracomment>&quot;Erreur de connexion, vérifiez vos paramètres.&quot;</extracomment>
<translation>Erreur de connexion, vérifiez vos paramètres.</translation> <translation>Erreur de connexion, vérifiez vos paramètres.</translation>
</message> </message>
<message> <message>
<location filename="../../core/account/AccountCore.cpp" line="498"/> <location filename="../../core/account/AccountCore.cpp" line="499"/>
<source>manage_account_status_cleared_summary</source> <source>manage_account_status_cleared_summary</source>
<extracomment>&quot;Compte désactivé, vous ne recevrez ni appel ni message.&quot;</extracomment> <extracomment>&quot;Compte désactivé, vous ne recevrez ni appel ni message.&quot;</extracomment>
<translation>Compte désactivé, vous ne recevrez ni appel ni message.</translation> <translation>Compte désactivé, vous ne recevrez ni appel ni message.</translation>
@ -695,76 +695,76 @@
<context> <context>
<name>CallCore</name> <name>CallCore</name>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="212"/> <location filename="../../core/call/CallCore.cpp" line="211"/>
<source>call_record_end_message</source> <source>call_record_end_message</source>
<extracomment>&quot;Enregistrement terminé&quot;</extracomment> <extracomment>&quot;Enregistrement terminé&quot;</extracomment>
<translation>Enregistrement terminé</translation> <translation>Enregistrement terminé</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="214"/> <location filename="../../core/call/CallCore.cpp" line="213"/>
<source>call_record_saved_in_file_message</source> <source>call_record_saved_in_file_message</source>
<extracomment>&quot;L&apos;appel a é enregistré dans le fichier : %1&quot;</extracomment> <extracomment>&quot;L&apos;appel a é enregistré dans le fichier : %1&quot;</extracomment>
<translation>L&apos;appel a é enregistré dans le fichier : %1</translation> <translation>L&apos;appel a é enregistré dans le fichier : %1</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="394"/> <location filename="../../core/call/CallCore.cpp" line="393"/>
<location filename="../../core/call/CallCore.cpp" line="419"/> <location filename="../../core/call/CallCore.cpp" line="418"/>
<source>call_stats_codec_label</source> <source>call_stats_codec_label</source>
<extracomment>&quot;Codec: %1 / %2 kHz&quot;</extracomment> <extracomment>&quot;Codec: %1 / %2 kHz&quot;</extracomment>
<translation>Codec: %1 / %2 kHz</translation> <translation>Codec: %1 / %2 kHz</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="398"/> <location filename="../../core/call/CallCore.cpp" line="397"/>
<location filename="../../core/call/CallCore.cpp" line="422"/> <location filename="../../core/call/CallCore.cpp" line="421"/>
<source>call_stats_bandwidth_label</source> <source>call_stats_bandwidth_label</source>
<extracomment>&quot;Bande passante : %1 %2 kbits/s %3 %4 kbits/s&quot;</extracomment> <extracomment>&quot;Bande passante : %1 %2 kbits/s %3 %4 kbits/s&quot;</extracomment>
<translation>Bande passante : %1 %2 kbits/s %3 %4 kbits/s</translation> <translation>Bande passante : %1 %2 kbits/s %3 %4 kbits/s</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="404"/> <location filename="../../core/call/CallCore.cpp" line="403"/>
<location filename="../../core/call/CallCore.cpp" line="427"/> <location filename="../../core/call/CallCore.cpp" line="426"/>
<source>call_stats_loss_rate_label</source> <source>call_stats_loss_rate_label</source>
<extracomment>&quot;Taux de perte: %1% %2%&quot;</extracomment> <extracomment>&quot;Taux de perte: %1% %2%&quot;</extracomment>
<translation>Taux de perte: %1% %2%</translation> <translation>Taux de perte: %1% %2%</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="409"/> <location filename="../../core/call/CallCore.cpp" line="408"/>
<source>call_stats_jitter_buffer_label</source> <source>call_stats_jitter_buffer_label</source>
<extracomment>&quot;Tampon de gigue: %1 ms&quot;</extracomment> <extracomment>&quot;Tampon de gigue: %1 ms&quot;</extracomment>
<translation>Tampon de gigue: %1 ms</translation> <translation>Tampon de gigue: %1 ms</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="436"/> <location filename="../../core/call/CallCore.cpp" line="435"/>
<source>call_stats_resolution_label</source> <source>call_stats_resolution_label</source>
<extracomment>&quot;Définition vidéo : %1 %2 %3 %4&quot;</extracomment> <extracomment>&quot;Définition vidéo : %1 %2 %3 %4&quot;</extracomment>
<translation>Définition vidéo : %1 %2 %3 %4</translation> <translation>Définition vidéo : %1 %2 %3 %4</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="442"/> <location filename="../../core/call/CallCore.cpp" line="441"/>
<source>call_stats_fps_label</source> <source>call_stats_fps_label</source>
<extracomment>&quot;FPS : %1 %2 %3 %4&quot;</extracomment> <extracomment>&quot;FPS : %1 %2 %3 %4&quot;</extracomment>
<translation>FPS : %1 %2 %3 %4</translation> <translation>FPS : %1 %2 %3 %4</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="655"/> <location filename="../../core/call/CallCore.cpp" line="654"/>
<source>media_encryption_dtls</source> <source>media_encryption_dtls</source>
<extracomment>DTLS</extracomment> <extracomment>DTLS</extracomment>
<translation>DTLS</translation> <translation>DTLS</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="658"/> <location filename="../../core/call/CallCore.cpp" line="657"/>
<source>media_encryption_none</source> <source>media_encryption_none</source>
<extracomment>None</extracomment> <extracomment>None</extracomment>
<translation>None</translation> <translation>None</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="661"/> <location filename="../../core/call/CallCore.cpp" line="660"/>
<source>media_encryption_srtp</source> <source>media_encryption_srtp</source>
<extracomment>SRTP</extracomment> <extracomment>SRTP</extracomment>
<translation>SRTP</translation> <translation>SRTP</translation>
</message> </message>
<message> <message>
<location filename="../../core/call/CallCore.cpp" line="664"/> <location filename="../../core/call/CallCore.cpp" line="663"/>
<source>media_encryption_post_quantum</source> <source>media_encryption_post_quantum</source>
<extracomment>&quot;ZRTP - Post quantique&quot;</extracomment> <extracomment>&quot;ZRTP - Post quantique&quot;</extracomment>
<translation>ZRTP - Post quantique</translation> <translation>ZRTP - Post quantique</translation>
@ -1418,15 +1418,15 @@
<translation>Transférer %1 à</translation> <translation>Transférer %1 à</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="733"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="734"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="745"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="746"/>
<source>call_transfer_confirm_dialog_tittle</source> <source>call_transfer_confirm_dialog_tittle</source>
<extracomment>&quot;Confirmer le transfert&quot;</extracomment> <extracomment>&quot;Confirmer le transfert&quot;</extracomment>
<translation>Confirmer le transfert</translation> <translation>Confirmer le transfert</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="735"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="736"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="746"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="747"/>
<source>call_transfer_confirm_dialog_message</source> <source>call_transfer_confirm_dialog_message</source>
<extracomment>&quot;Vous allez transférer %1 à %2.&quot;</extracomment> <extracomment>&quot;Vous allez transférer %1 à %2.&quot;</extracomment>
<translation>Vous allez transférer %1 à %2.</translation> <translation>Vous allez transférer %1 à %2.</translation>
@ -1439,7 +1439,7 @@
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="656"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="656"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1534"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1535"/>
<source>call_action_show_dialer</source> <source>call_action_show_dialer</source>
<extracomment>&quot;Pavé numérique&quot;</extracomment> <extracomment>&quot;Pavé numérique&quot;</extracomment>
<translation>Pavé numérique</translation> <translation>Pavé numérique</translation>
@ -1457,14 +1457,14 @@
<translation>Liste d&apos;appel</translation> <translation>Liste d&apos;appel</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="892"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="893"/>
<source>Merger tous les appels</source> <source>Merger tous les appels</source>
<extracomment>call_action_merge_calls</extracomment> <extracomment>call_action_merge_calls</extracomment>
<translation>Merger tous les appels</translation> <translation>Merger tous les appels</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="671"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="671"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1609"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1610"/>
<source>call_action_go_to_settings</source> <source>call_action_go_to_settings</source>
<extracomment>&quot;Paramètres&quot;</extracomment> <extracomment>&quot;Paramètres&quot;</extracomment>
<translation>Paramètres</translation> <translation>Paramètres</translation>
@ -1476,34 +1476,34 @@
<translation>Partage de votre écran</translation> <translation>Partage de votre écran</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1034"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1035"/>
<source>conference_share_link_title</source> <source>conference_share_link_title</source>
<extracomment>Partager le lien de la réunion</extracomment> <extracomment>Partager le lien de la réunion</extracomment>
<translation>Partager le lien de la réunion</translation> <translation>Partager le lien de la réunion</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1038"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1039"/>
<source>copied</source> <source>copied</source>
<extracomment>Copié</extracomment> <extracomment>Copié</extracomment>
<translation>Copié</translation> <translation>Copié</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1040"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1041"/>
<source>information_popup_meeting_address_copied_to_clipboard</source> <source>information_popup_meeting_address_copied_to_clipboard</source>
<extracomment>Le lien de la réunion a é copié dans le presse-papier</extracomment> <extracomment>Le lien de la réunion a é copié dans le presse-papier</extracomment>
<translation>Le lien de la réunion a é copié dans le presse-papier</translation> <translation>Le lien de la réunion a é copié dans le presse-papier</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1049"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1050"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1053"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1054"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1059"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1060"/>
<source>conference_participants_list_title</source> <source>conference_participants_list_title</source>
<extracomment>&quot;Participants (%1)&quot;</extracomment> <extracomment>&quot;Participants (%1)&quot;</extracomment>
<translation>Participants (%1)</translation> <translation>Participants (%1)</translation>
</message> </message>
<message numerus="yes"> <message numerus="yes">
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1080"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1081"/>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1088"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1089"/>
<source>group_call_participant_selected</source> <source>group_call_participant_selected</source>
<translation> <translation>
<numerusform>%1 participant sélectionné</numerusform> <numerusform>%1 participant sélectionné</numerusform>
@ -1511,7 +1511,7 @@
</translation> </translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1087"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1088"/>
<source>meeting_schedule_add_participants_title</source> <source>meeting_schedule_add_participants_title</source>
<translation>Ajouter des participants</translation> <translation>Ajouter des participants</translation>
</message> </message>
@ -1528,132 +1528,132 @@
<translation>Statistiques</translation> <translation>Statistiques</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1230"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1231"/>
<source>call_action_end_call</source> <source>call_action_end_call</source>
<extracomment>&quot;Terminer l&apos;appel&quot;</extracomment> <extracomment>&quot;Terminer l&apos;appel&quot;</extracomment>
<translation>Terminer l&apos;appel</translation> <translation>Terminer l&apos;appel</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1261"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1262"/>
<source>call_action_resume_call</source> <source>call_action_resume_call</source>
<extracomment>&quot;Reprendre l&apos;appel&quot;</extracomment> <extracomment>&quot;Reprendre l&apos;appel&quot;</extracomment>
<translation>Reprendre l&apos;appel</translation> <translation>Reprendre l&apos;appel</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1263"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1264"/>
<source>call_action_pause_call</source> <source>call_action_pause_call</source>
<extracomment>&quot;Mettre l&apos;appel en pause&quot;</extracomment> <extracomment>&quot;Mettre l&apos;appel en pause&quot;</extracomment>
<translation>Mettre l&apos;appel en pause</translation> <translation>Mettre l&apos;appel en pause</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1294"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1295"/>
<source>call_action_transfer_call</source> <source>call_action_transfer_call</source>
<extracomment>&quot;Transférer l&apos;appel&quot;</extracomment> <extracomment>&quot;Transférer l&apos;appel&quot;</extracomment>
<translation>Transférer l&apos;appel</translation> <translation>Transférer l&apos;appel</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1314"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1315"/>
<source>call_action_start_new_call_hint</source> <source>call_action_start_new_call_hint</source>
<extracomment>&quot;Initier un nouvel appel&quot;</extracomment> <extracomment>&quot;Initier un nouvel appel&quot;</extracomment>
<translation>Initier un nouvel appel</translation> <translation>Initier un nouvel appel</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1334"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1335"/>
<source>call_display_call_list_hint</source> <source>call_display_call_list_hint</source>
<extracomment>&quot;Afficher la liste d&apos;appels&quot;</extracomment> <extracomment>&quot;Afficher la liste d&apos;appels&quot;</extracomment>
<translation>Afficher la liste d&apos;appels</translation> <translation>Afficher la liste d&apos;appels</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1367"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1368"/>
<source>call_deactivate_video_hint</source> <source>call_deactivate_video_hint</source>
<extracomment>&quot;Désactiver la vidéo&quot; &quot;Activer la vidéo&quot;</extracomment> <extracomment>&quot;Désactiver la vidéo&quot; &quot;Activer la vidéo&quot;</extracomment>
<translation>Désactiver la vidéo</translation> <translation>Désactiver la vidéo</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1367"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1368"/>
<source>call_activate_video_hint</source> <source>call_activate_video_hint</source>
<translation>Activer la vidéo</translation> <translation>Activer la vidéo</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1380"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1381"/>
<source>call_activate_microphone</source> <source>call_activate_microphone</source>
<extracomment>&quot;Activer le micro&quot;</extracomment> <extracomment>&quot;Activer le micro&quot;</extracomment>
<translation>Activer le micro</translation> <translation>Activer le micro</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1382"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1383"/>
<source>call_deactivate_microphone</source> <source>call_deactivate_microphone</source>
<extracomment>&quot;Désactiver le micro&quot;</extracomment> <extracomment>&quot;Désactiver le micro&quot;</extracomment>
<translation>Désactiver le micro</translation> <translation>Désactiver le micro</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1398"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1399"/>
<source>call_share_screen_hint</source> <source>call_share_screen_hint</source>
<extracomment>Partager l&apos;écran</extracomment> <extracomment>Partager l&apos;écran</extracomment>
<translation>Partager l&apos;écran</translation> <translation>Partager l&apos;écran</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1416"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1417"/>
<source>call_open_chat_hint</source> <source>call_open_chat_hint</source>
<extracomment>Open chat</extracomment> <extracomment>Open chat</extracomment>
<translation>Ouvrir le chat</translation> <translation>Ouvrir le chat</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1435"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1436"/>
<source>call_rise_hand_hint</source> <source>call_rise_hand_hint</source>
<extracomment>&quot;Lever la main&quot;</extracomment> <extracomment>&quot;Lever la main&quot;</extracomment>
<translation>Lever la main</translation> <translation>Lever la main</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1445"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1446"/>
<source>call_send_reaction_hint</source> <source>call_send_reaction_hint</source>
<extracomment>&quot;Envoyer une réaction&quot;</extracomment> <extracomment>&quot;Envoyer une réaction&quot;</extracomment>
<translation>Envoyer une réaction</translation> <translation>Envoyer une réaction</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1454"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1455"/>
<source>call_manage_participants_hint</source> <source>call_manage_participants_hint</source>
<extracomment>&quot;Gérer les participants&quot;</extracomment> <extracomment>&quot;Gérer les participants&quot;</extracomment>
<translation>Gérer les participants</translation> <translation>Gérer les participants</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1473"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1474"/>
<source>call_more_options_hint</source> <source>call_more_options_hint</source>
<extracomment>&quot;Plus d&apos;options&quot;</extracomment> <extracomment>&quot;Plus d&apos;options&quot;</extracomment>
<translation>Plus d&apos;options</translation> <translation>Plus d&apos;options</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1502"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1503"/>
<source>call_action_change_conference_layout</source> <source>call_action_change_conference_layout</source>
<extracomment>&quot;Modifier la disposition&quot;</extracomment> <extracomment>&quot;Modifier la disposition&quot;</extracomment>
<translation>Modifier la disposition</translation> <translation>Modifier la disposition</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1514"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1515"/>
<source>call_action_full_screen</source> <source>call_action_full_screen</source>
<extracomment>&quot;Mode Plein écran&quot;</extracomment> <extracomment>&quot;Mode Plein écran&quot;</extracomment>
<translation>Mode Plein écran</translation> <translation>Mode Plein écran</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1563"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1564"/>
<source>call_action_stop_recording</source> <source>call_action_stop_recording</source>
<extracomment>&quot;Terminer l&apos;enregistrement&quot;</extracomment> <extracomment>&quot;Terminer l&apos;enregistrement&quot;</extracomment>
<translation>Terminer l&apos;enregistrement</translation> <translation>Terminer l&apos;enregistrement</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1565"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1566"/>
<source>call_action_record</source> <source>call_action_record</source>
<extracomment>&quot;Enregistrer l&apos;appel&quot;</extracomment> <extracomment>&quot;Enregistrer l&apos;appel&quot;</extracomment>
<translation>Enregistrer l&apos;appel</translation> <translation>Enregistrer l&apos;appel</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1591"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1592"/>
<source>call_activate_speaker_hint</source> <source>call_activate_speaker_hint</source>
<extracomment>&quot;Activer le son&quot;</extracomment> <extracomment>&quot;Activer le son&quot;</extracomment>
<translation>Activer le son</translation> <translation>Activer le son</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1593"/> <location filename="../../view/Page/Window/Call/CallsWindow.qml" line="1594"/>
<source>call_deactivate_speaker_hint</source> <source>call_deactivate_speaker_hint</source>
<extracomment>&quot;Désactiver le son&quot;</extracomment> <extracomment>&quot;Désactiver le son&quot;</extracomment>
<translation>Désactiver le son</translation> <translation>Désactiver le son</translation>
@ -1784,13 +1784,13 @@
<context> <context>
<name>ChatCore</name> <name>ChatCore</name>
<message> <message>
<location filename="../../core/chat/ChatCore.cpp" line="177"/> <location filename="../../core/chat/ChatCore.cpp" line="176"/>
<source>info_toast_deleted_title</source> <source>info_toast_deleted_title</source>
<extracomment>Deleted</extracomment> <extracomment>Deleted</extracomment>
<translation>Supprimé</translation> <translation>Supprimé</translation>
</message> </message>
<message> <message>
<location filename="../../core/chat/ChatCore.cpp" line="179"/> <location filename="../../core/chat/ChatCore.cpp" line="178"/>
<source>info_toast_deleted_message_history</source> <source>info_toast_deleted_message_history</source>
<extracomment>Message history has been deleted</extracomment> <extracomment>Message history has been deleted</extracomment>
<translation>L&apos;historique des messages a é supprimé</translation> <translation>L&apos;historique des messages a é supprimé</translation>
@ -2223,31 +2223,31 @@ en bout. Seul votre correspondant peut les déchiffrer.</translation>
<translation>Nouvelle conversation</translation> <translation>Nouvelle conversation</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="286"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="287"/>
<source>chat_start_group_chat_title</source> <source>chat_start_group_chat_title</source>
<extracomment>&quot;Nouveau groupe&quot;</extracomment> <extracomment>&quot;Nouveau groupe&quot;</extracomment>
<translation>Nouveau groupe</translation> <translation>Nouveau groupe</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="288"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="289"/>
<source>chat_action_start_group_chat</source> <source>chat_action_start_group_chat</source>
<extracomment>&quot;Créer&quot;</extracomment> <extracomment>&quot;Créer&quot;</extracomment>
<translation>Créer</translation> <translation>Créer</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="314"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="315"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="318"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="319"/>
<source>information_popup_error_title</source> <source>information_popup_error_title</source>
<translation>Erreur</translation> <translation>Erreur</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="316"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="317"/>
<source>group_chat_error_must_have_name</source> <source>group_chat_error_must_have_name</source>
<extracomment>&quot;Un nom doit être donné au groupe</extracomment> <extracomment>&quot;Un nom doit être donné au groupe</extracomment>
<translation>Un nom doit être donné au groupe</translation> <translation>Un nom doit être donné au groupe</translation>
</message> </message>
<message> <message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="320"/> <location filename="../../view/Page/Main/Chat/ChatPage.qml" line="321"/>
<source>group_call_error_not_connected</source> <source>group_call_error_not_connected</source>
<extracomment>&quot;Vous n&apos;etes pas connecté&quot;</extracomment> <extracomment>&quot;Vous n&apos;etes pas connecté&quot;</extracomment>
<translation>Vous n&apos;êtes pas connecté</translation> <translation>Vous n&apos;êtes pas connecté</translation>
@ -2310,13 +2310,13 @@ en bout. Seul votre correspondant peut les déchiffrer.</translation>
<context> <context>
<name>ConferenceInfoCore</name> <name>ConferenceInfoCore</name>
<message> <message>
<location filename="../../core/conference/ConferenceInfoCore.cpp" line="572"/> <location filename="../../core/conference/ConferenceInfoCore.cpp" line="571"/>
<source>information_popup_error_title</source> <source>information_popup_error_title</source>
<extracomment>&quot;Erreur&quot;</extracomment> <extracomment>&quot;Erreur&quot;</extracomment>
<translation>Erreur</translation> <translation>Erreur</translation>
</message> </message>
<message> <message>
<location filename="../../core/conference/ConferenceInfoCore.cpp" line="574"/> <location filename="../../core/conference/ConferenceInfoCore.cpp" line="573"/>
<source>information_popup_disconnected_account_message</source> <source>information_popup_disconnected_account_message</source>
<extracomment>&quot;Votre compte est déconnecté&quot;</extracomment> <extracomment>&quot;Votre compte est déconnecté&quot;</extracomment>
<translation>Votre compte est déconnecté</translation> <translation>Votre compte est déconnecté</translation>
@ -2971,7 +2971,7 @@ en bout. Seul votre correspondant peut les déchiffrer.</translation>
<context> <context>
<name>CreationFormLayout</name> <name>CreationFormLayout</name>
<message> <message>
<location filename="../../view/Control/Container/CreationFormLayout.qml" line="44"/> <location filename="../../view/Control/Container/CreationFormLayout.qml" line="45"/>
<source>search_bar_look_for_contact_text</source> <source>search_bar_look_for_contact_text</source>
<extracomment>&quot;Rechercher un contact&quot;</extracomment> <extracomment>&quot;Rechercher un contact&quot;</extracomment>
<translation>Rechercher un contact</translation> <translation>Rechercher un contact</translation>
@ -5127,49 +5127,49 @@ Pour les activer dans un projet commercial, merci de nous contacter.</translatio
<context> <context>
<name>ToolModel</name> <name>ToolModel</name>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="300"/> <location filename="../../model/tool/ToolModel.cpp" line="298"/>
<source>call_error_uninterpretable_sip_address</source> <source>call_error_uninterpretable_sip_address</source>
<extracomment>&quot;The calling address is not an interpretable SIP address : %1</extracomment> <extracomment>&quot;The calling address is not an interpretable SIP address : %1</extracomment>
<translation>L&apos;adresse n&apos;est pas interprétable comme une adresse SIP</translation> <translation>L&apos;adresse n&apos;est pas interprétable comme une adresse SIP</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="372"/> <location filename="../../model/tool/ToolModel.cpp" line="370"/>
<source>group_call_error_no_account</source> <source>group_call_error_no_account</source>
<translation>Impossible de créer l&apos;appel de groupe, le compte par défaut n&apos;est pas défini</translation> <translation>Impossible de créer l&apos;appel de groupe, le compte par défaut n&apos;est pas défini</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="397"/> <location filename="../../model/tool/ToolModel.cpp" line="395"/>
<source>group_call_error_participants_invite</source> <source>group_call_error_participants_invite</source>
<translation>Impossible d&apos;inviter les participants à l&apos;appel de groupe</translation> <translation>Impossible d&apos;inviter les participants à l&apos;appel de groupe</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="401"/> <location filename="../../model/tool/ToolModel.cpp" line="399"/>
<source>group_call_error_creation</source> <source>group_call_error_creation</source>
<translation>L&apos;appel de groupe n&apos;a pas pu être créé</translation> <translation>L&apos;appel de groupe n&apos;a pas pu être créé</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="501"/> <location filename="../../model/tool/ToolModel.cpp" line="499"/>
<source>voice_recording_duration</source> <source>voice_recording_duration</source>
<extracomment>&quot;Voice recording (%1)&quot; : %1 is the duration formated in mm:ss</extracomment> <extracomment>&quot;Voice recording (%1)&quot; : %1 is the duration formated in mm:ss</extracomment>
<translation>Message vocal (%1)</translation> <translation>Message vocal (%1)</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="574"/> <location filename="../../model/tool/ToolModel.cpp" line="572"/>
<source>unknown_audio_device_name</source> <source>unknown_audio_device_name</source>
<translation>Appareil inconnu</translation> <translation>Appareil inconnu</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="509"/> <location filename="../../model/tool/ToolModel.cpp" line="507"/>
<source>conference_invitation</source> <source>conference_invitation</source>
<translation>Invitation à une réunion</translation> <translation>Invitation à une réunion</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="513"/> <location filename="../../model/tool/ToolModel.cpp" line="511"/>
<source>conference_invitation_cancelled</source> <source>conference_invitation_cancelled</source>
<translation>Annulation d&apos;une réunion</translation> <translation>Annulation d&apos;une réunion</translation>
</message> </message>
<message> <message>
<location filename="../../model/tool/ToolModel.cpp" line="511"/> <location filename="../../model/tool/ToolModel.cpp" line="509"/>
<source>conference_invitation_updated</source> <source>conference_invitation_updated</source>
<translation>Modification d&apos;une réunion</translation> <translation>Modification d&apos;une réunion</translation>
</message> </message>

View file

@ -125,7 +125,7 @@ void AccountModel::setPictureUri(QString uri) {
// Hack because Account doesn't provide callbacks on updated data // Hack because Account doesn't provide callbacks on updated data
// emit pictureUriChanged(uri); // emit pictureUriChanged(uri);
auto core = CoreModel::getInstance()->getCore(); auto core = CoreModel::getInstance()->getCore();
emit CoreModel::getInstance() -> defaultAccountChanged(core, core->getDefaultAccount()); emit CoreModel::getInstance()->defaultAccountChanged(core, core->getDefaultAccount());
} }
void AccountModel::onDefaultAccountChanged() { void AccountModel::onDefaultAccountChanged() {
@ -182,7 +182,7 @@ void AccountModel::setDisplayName(QString displayName) {
// Hack because Account doesn't provide callbacks on updated data // Hack because Account doesn't provide callbacks on updated data
// emit displayNameChanged(displayName); // emit displayNameChanged(displayName);
auto core = CoreModel::getInstance()->getCore(); auto core = CoreModel::getInstance()->getCore();
emit CoreModel::getInstance() -> defaultAccountChanged(core, core->getDefaultAccount()); emit CoreModel::getInstance()->defaultAccountChanged(core, core->getDefaultAccount());
} }
void AccountModel::setDialPlan(int index) { void AccountModel::setDialPlan(int index) {
@ -261,8 +261,8 @@ linphone::TransportType AccountModel::getTransport() const {
void AccountModel::setTransport(linphone::TransportType value, bool save) { void AccountModel::setTransport(linphone::TransportType value, bool save) {
mustBeInLinphoneThread(log().arg(Q_FUNC_INFO)); mustBeInLinphoneThread(log().arg(Q_FUNC_INFO));
auto params = mMonitor->getParams()->clone(); if (mMonitor->getParams()->getServerAddress()) {
if (params->getServerAddress()) { auto params = mMonitor->getParams()->clone();
auto addressClone = params->getServerAddress()->clone(); auto addressClone = params->getServerAddress()->clone();
addressClone->setTransport(value); addressClone->setTransport(value);
params->setServerAddress(addressClone); params->setServerAddress(addressClone);

View file

@ -84,13 +84,13 @@ QString ChatModel::getIdentifier() const {
QString ChatModel::getTitle() { QString ChatModel::getTitle() {
if (mMonitor->hasCapability((int)linphone::ChatRoom::Capabilities::Basic)) { if (mMonitor->hasCapability((int)linphone::ChatRoom::Capabilities::Basic)) {
return ToolModel::getDisplayName(mMonitor->getPeerAddress()->clone()); return ToolModel::getDisplayName(mMonitor->getPeerAddress());
} else { } else {
if (mMonitor->hasCapability((int)linphone::ChatRoom::Capabilities::OneToOne)) { if (mMonitor->hasCapability((int)linphone::ChatRoom::Capabilities::OneToOne)) {
auto participants = mMonitor->getParticipants(); auto participants = mMonitor->getParticipants();
if (participants.size() > 0) { if (participants.size() > 0) {
auto peer = participants.front(); auto peer = participants.front();
return peer ? ToolModel::getDisplayName(peer->getAddress()->clone()) : ""; return peer ? ToolModel::getDisplayName(peer->getAddress()) : "";
} else { } else {
return ""; return "";
} }

View file

@ -110,7 +110,7 @@ linphone::ConferenceInfo::State ConferenceInfoModel::getState() const {
QString ConferenceInfoModel::getOrganizerName() const { QString ConferenceInfoModel::getOrganizerName() const {
mustBeInLinphoneThread(log().arg(Q_FUNC_INFO)); mustBeInLinphoneThread(log().arg(Q_FUNC_INFO));
auto organizer = mConferenceInfo->getOrganizer()->clone(); auto organizer = mConferenceInfo->getOrganizer();
return ToolModel::getDisplayName(organizer); return ToolModel::getDisplayName(organizer);
} }

View file

@ -70,15 +70,6 @@ std::shared_ptr<CoreModel> CoreModel::create(const QString &configPath, QThread
} }
void CoreModel::start() { void CoreModel::start() {
mIterateTimer = new QTimer(this);
mIterateTimer->setInterval(30);
connect(mIterateTimer, &QTimer::timeout, [this]() {
static int iterateCount = 0;
if (iterateCount != 0) lCritical() << log().arg("Multi Iterate ! ");
++iterateCount;
mCore->iterate();
--iterateCount;
});
setPathBeforeCreation(); setPathBeforeCreation();
mCore = mCore =
linphone::Factory::get()->createCore(Utils::appStringToCoreString(Paths::getConfigFilePath(mConfigPath)), linphone::Factory::get()->createCore(Utils::appStringToCoreString(Paths::getConfigFilePath(mConfigPath)),
@ -122,6 +113,11 @@ void CoreModel::start() {
mCore->enableFriendListSubscription(true); mCore->enableFriendListSubscription(true);
if (mCore->getLogCollectionUploadServerUrl().empty()) if (mCore->getLogCollectionUploadServerUrl().empty())
mCore->setLogCollectionUploadServerUrl(Constants::DefaultUploadLogsServer); mCore->setLogCollectionUploadServerUrl(Constants::DefaultUploadLogsServer);
mIterateTimer = new QTimer(this);
mIterateTimer->setInterval(20);
connect(mIterateTimer, &QTimer::timeout, [this]() { mCore->iterate(); });
mIterateTimer->start(); mIterateTimer->start();
auto linphoneSearch = mCore->createMagicSearch(); auto linphoneSearch = mCore->createMagicSearch();

View file

@ -122,7 +122,7 @@ bool FriendsManager::isInOtherAddresses(const QString &key) {
return mOtherAddresses.contains(key); return mOtherAddresses.contains(key);
} }
void FriendsManager::appendKnownFriend(std::shared_ptr<linphone::Address> address, void FriendsManager::appendKnownFriend(std::shared_ptr<const linphone::Address> address,
std::shared_ptr<linphone::Friend> f) { std::shared_ptr<linphone::Friend> f) {
auto key = Utils::coreStringToAppString(address->asStringUriOnly()); auto key = Utils::coreStringToAppString(address->asStringUriOnly());
if (mKnownFriends.contains(key)) { if (mKnownFriends.contains(key)) {
@ -132,7 +132,7 @@ void FriendsManager::appendKnownFriend(std::shared_ptr<linphone::Address> addres
mKnownFriends.insert(key, QVariant::fromValue(f)); mKnownFriends.insert(key, QVariant::fromValue(f));
} }
void FriendsManager::appendUnknownFriend(std::shared_ptr<linphone::Address> address, void FriendsManager::appendUnknownFriend(std::shared_ptr<const linphone::Address> address,
std::shared_ptr<linphone::Friend> f) { std::shared_ptr<linphone::Friend> f) {
auto key = Utils::coreStringToAppString(address->asStringUriOnly()); auto key = Utils::coreStringToAppString(address->asStringUriOnly());
if (mUnknownFriends.contains(key)) { if (mUnknownFriends.contains(key)) {

View file

@ -21,12 +21,12 @@
#ifndef FRIENDS_MANAGER_H_ #ifndef FRIENDS_MANAGER_H_
#define FRIENDS_MANAGER_H_ #define FRIENDS_MANAGER_H_
#include "tool/AbstractObject.hpp"
#include <QObject> #include <QObject>
#include <QSharedPointer> #include <QSharedPointer>
#include <QThread> #include <QThread>
#include <QVariantMap> #include <QVariantMap>
#include <linphone++/linphone.hh> #include <linphone++/linphone.hh>
#include "tool/AbstractObject.hpp"
class FriendsManager : public QObject, public AbstractObject { class FriendsManager : public QObject, public AbstractObject {
Q_OBJECT Q_OBJECT
@ -41,19 +41,19 @@ public:
QVariantMap getUnknownFriends() const; QVariantMap getUnknownFriends() const;
QStringList getOtherAddresses() const; QStringList getOtherAddresses() const;
std::shared_ptr<linphone::Friend> getKnownFriendAtKey(const QString& key); std::shared_ptr<linphone::Friend> getKnownFriendAtKey(const QString &key);
std::shared_ptr<linphone::Friend> getUnknownFriendAtKey(const QString& key); std::shared_ptr<linphone::Friend> getUnknownFriendAtKey(const QString &key);
bool isInKnownFriends(const QString& key); bool isInKnownFriends(const QString &key);
bool isInUnknownFriends(const QString& key); bool isInUnknownFriends(const QString &key);
bool isInOtherAddresses(const QString& key); bool isInOtherAddresses(const QString &key);
void appendKnownFriend(std::shared_ptr<linphone::Address> address, std::shared_ptr<linphone::Friend> f); void appendKnownFriend(std::shared_ptr<const linphone::Address> address, std::shared_ptr<linphone::Friend> f);
void appendUnknownFriend(std::shared_ptr<linphone::Address> address, std::shared_ptr<linphone::Friend> f); void appendUnknownFriend(std::shared_ptr<const linphone::Address> address, std::shared_ptr<linphone::Friend> f);
void appendOtherAddress(QString address); void appendOtherAddress(QString address);
void removeUnknownFriend(const QString& key); void removeUnknownFriend(const QString &key);
void removeOtherAddress(const QString& key); void removeOtherAddress(const QString &key);
private: private:
static std::shared_ptr<FriendsManager> gFriendsManager; static std::shared_ptr<FriendsManager> gFriendsManager;

View file

@ -87,9 +87,9 @@ void MagicSearchModel::onSearchResultsReceived(const std::shared_ptr<linphone::M
auto f = result->getFriend(); auto f = result->getFriend();
auto friendsManager = FriendsManager::getInstance(); auto friendsManager = FriendsManager::getInstance();
if (f) { if (f) {
auto friendAddress = f->getAddress() ? f->getAddress()->clone() : nullptr; auto friendAddress = f->getAddress() ? f->getAddress() : nullptr;
if (friendAddress) { if (friendAddress) {
friendAddress->clean(); // friendAddress->clean();
qDebug() << "friend exists, append to unknown map"; qDebug() << "friend exists, append to unknown map";
friendsManager->appendUnknownFriend(friendAddress, f); friendsManager->appendUnknownFriend(friendAddress, f);
if (friendsManager->isInOtherAddresses( if (friendsManager->isInOtherAddresses(

View file

@ -81,7 +81,7 @@ std::shared_ptr<linphone::AudioDevice> ToolModel::findAudioDevice(const QString
return nullptr; return nullptr;
} }
QString ToolModel::getDisplayName(const std::shared_ptr<linphone::Address> &address) { QString ToolModel::getDisplayName(const std::shared_ptr<const linphone::Address> &address) {
QString displayName; QString displayName;
if (address) { if (address) {
auto linFriend = findFriendByAddress(address); auto linFriend = findFriendByAddress(address);
@ -195,9 +195,9 @@ QString ToolModel::encodeTextToQmlRichFormat(const QString &text,
if (it != participants.end()) { if (it != participants.end()) {
auto foundParticipant = *it; auto foundParticipant = *it;
// participants.at(std::distance(participants.begin(), it)); // participants.at(std::distance(participants.begin(), it));
auto address = foundParticipant->getAddress()->clone(); auto address = foundParticipant->getAddress();
auto isFriend = findFriendByAddress(address); auto isFriend = findFriendByAddress(address);
address->clean(); // address->clean();
auto addressString = Utils::coreStringToAppString(address->asStringUriOnly()); auto addressString = Utils::coreStringToAppString(address->asStringUriOnly());
if (isFriend) if (isFriend)
part = "@" + Utils::coreStringToAppString(isFriend->getAddress()->getDisplayName()); part = "@" + Utils::coreStringToAppString(isFriend->getAddress()->getDisplayName());
@ -221,17 +221,15 @@ QString ToolModel::encodeTextToQmlRichFormat(const QString &text,
} }
std::shared_ptr<linphone::Friend> ToolModel::findFriendByAddress(const QString &address) { std::shared_ptr<linphone::Friend> ToolModel::findFriendByAddress(const QString &address) {
auto defaultFriendList = CoreModel::getInstance()->getCore()->getDefaultFriendList();
if (!defaultFriendList) return nullptr;
auto linphoneAddr = ToolModel::interpretUrl(address); auto linphoneAddr = ToolModel::interpretUrl(address);
if (linphoneAddr) return ToolModel::findFriendByAddress(linphoneAddr); if (linphoneAddr) return ToolModel::findFriendByAddress(linphoneAddr);
else return nullptr; else return nullptr;
} }
std::shared_ptr<linphone::Friend> std::shared_ptr<linphone::Friend>
ToolModel::findFriendByAddress(const std::shared_ptr<linphone::Address> &linphoneAddr) { ToolModel::findFriendByAddress(const std::shared_ptr<const linphone::Address> &linphoneAddr) {
auto friendsManager = FriendsManager::getInstance(); auto friendsManager = FriendsManager::getInstance();
linphoneAddr->clean(); // linphoneAddr->clean();
QString key = Utils::coreStringToAppString(linphoneAddr->asStringUriOnly()); QString key = Utils::coreStringToAppString(linphoneAddr->asStringUriOnly());
if (friendsManager->isInKnownFriends(key)) { if (friendsManager->isInKnownFriends(key)) {
// qDebug() << key << "have been found in known friend, return it"; // qDebug() << key << "have been found in known friend, return it";
@ -598,7 +596,7 @@ ToolModel::getChatRoomParams(std::shared_ptr<linphone::Call> call, std::shared_p
auto core = call ? call->getCore() : CoreModel::getInstance()->getCore(); auto core = call ? call->getCore() : CoreModel::getInstance()->getCore();
auto localAddress = call ? call->getCallLog()->getLocalAddress() : nullptr; auto localAddress = call ? call->getCallLog()->getLocalAddress() : nullptr;
if (!remoteAddress && call) remoteAddress = call->getRemoteAddress()->clone(); if (!remoteAddress && call) remoteAddress = call->getRemoteAddress()->clone();
remoteAddress->clean(); // remoteAddress->clean();
auto account = findAccount(localAddress); auto account = findAccount(localAddress);
if (!account) account = core->getDefaultAccount(); if (!account) account = core->getDefaultAccount();
if (!account) qWarning() << "failed to get account, return"; if (!account) qWarning() << "failed to get account, return";

View file

@ -47,7 +47,7 @@ public:
static bool isLocal(const std::shared_ptr<linphone::Conference> &conference, static bool isLocal(const std::shared_ptr<linphone::Conference> &conference,
const std::shared_ptr<const linphone::ParticipantDevice> &device); const std::shared_ptr<const linphone::ParticipantDevice> &device);
static QString getDisplayName(const std::shared_ptr<linphone::Address> &address); static QString getDisplayName(const std::shared_ptr<const linphone::Address> &address);
static QString getDisplayName(QString address); static QString getDisplayName(QString address);
static QString encodeTextToQmlRichFormat(const QString &text, static QString encodeTextToQmlRichFormat(const QString &text,
@ -56,7 +56,7 @@ public:
static std::shared_ptr<linphone::Friend> findFriendByAddress(const QString &address); static std::shared_ptr<linphone::Friend> findFriendByAddress(const QString &address);
static std::shared_ptr<linphone::Friend> static std::shared_ptr<linphone::Friend>
findFriendByAddress(const std::shared_ptr<linphone::Address> &linphoneAddr); findFriendByAddress(const std::shared_ptr<const linphone::Address> &linphoneAddr);
static bool createCall(const QString &sipAddress, static bool createCall(const QString &sipAddress,
const QVariantMap &options = {}, const QVariantMap &options = {},

View file

@ -19,6 +19,7 @@ FocusScope {
clip: true clip: true
property alias topContent: topLayout.data property alias topContent: topLayout.data
property bool topLayoutVisible: topLayout.children.length > 0 property bool topLayoutVisible: topLayout.children.length > 0
property int searchBarRightMaring: Math.round(39 * DefaultStyle.dp)
ColumnLayout { ColumnLayout {
anchors.fill: parent anchors.fill: parent
@ -36,7 +37,7 @@ FocusScope {
id: searchBar id: searchBar
Layout.alignment: Qt.AlignTop Layout.alignment: Qt.AlignTop
Layout.fillWidth: true Layout.fillWidth: true
// Layout.rightMargin: Math.round(39 * DefaultStyle.dp) Layout.rightMargin: mainItem.searchBarRightMaring
focus: true focus: true
color: mainItem.searchBarColor color: mainItem.searchBarColor
borderColor: mainItem.searchBarBorderColor borderColor: mainItem.searchBarBorderColor

View file

@ -260,6 +260,7 @@ AbstractMainPage {
id: newChatForm id: newChatForm
Layout.fillWidth: true Layout.fillWidth: true
Layout.fillHeight: true Layout.fillHeight: true
Layout.rightMargin: Math.round(8 * DefaultStyle.dp)
Layout.topMargin: Math.round(18 * DefaultStyle.dp) Layout.topMargin: Math.round(18 * DefaultStyle.dp)
onGroupCreationRequested: { onGroupCreationRequested: {
console.log("groupe call requetsed") console.log("groupe call requetsed")

View file

@ -726,6 +726,7 @@ AbstractWindow {
displayCurrentCalls: true displayCurrentCalls: true
searchBarColor: DefaultStyle.grey_0 searchBarColor: DefaultStyle.grey_0
searchBarBorderColor: DefaultStyle.grey_200 searchBarBorderColor: DefaultStyle.grey_200
searchBarRightMaring: 0
onContactClicked: contact => { onContactClicked: contact => {
var callsWin = UtilsCpp.getCallsWindow() var callsWin = UtilsCpp.getCallsWindow()
if (contact) if (contact)