Chat fixes : \

hidden button for debug chatroom address (top right of the avatar in conversation info, press and hold right click) \
display year in meeting list if not this year \
try to fix #LINQT-1834 not all imdn status displayed \
chat details panel refacto
This commit is contained in:
Gaëlle Braud 2025-07-22 16:10:58 +00:00
parent 5c7741abe3
commit 023b07743a
17 changed files with 1113 additions and 1318 deletions

View file

@ -41,6 +41,17 @@ bool ImdnStatus::operator!=(ImdnStatus r) {
return r.mState != mState || r.mAddress != mAddress || r.mLastUpdatedTime != mLastUpdatedTime;
}
ImdnStatus::ImdnStatus() {
}
ImdnStatus::ImdnStatus(const QString &address,
const LinphoneEnums::ChatMessageState &state,
QDateTime lastUpdatedTime) {
mState = state;
mAddress = address;
mLastUpdatedTime = lastUpdatedTime;
}
ImdnStatus ImdnStatus::createMessageImdnStatusVariant(const QString &address,
const LinphoneEnums::ChatMessageState &state,
QDateTime lastUpdatedTime) {
@ -330,8 +341,8 @@ void ChatMessageCore::setSelf(QSharedPointer<ChatMessageCore> me) {
QList<ImdnStatus> ChatMessageCore::computeDeliveryStatus(const std::shared_ptr<linphone::ChatMessage> &message) {
mustBeInLinphoneThread(log().arg(Q_FUNC_INFO));
QList<ImdnStatus> imdnStatusList;
auto createImdnStatus = [this, &imdnStatusList](std::shared_ptr<linphone::ParticipantImdnState> participant,
linphone::ChatMessage::State state) {
auto createImdnStatus = [this](std::shared_ptr<linphone::ParticipantImdnState> participant,
linphone::ChatMessage::State state) -> ImdnStatus {
auto address = participant->getParticipant() ? participant->getParticipant()->getAddress()->clone() : nullptr;
auto lastUpdated = QDateTime::fromSecsSinceEpoch(participant->getStateChangeTime());
if (address) {
@ -339,24 +350,30 @@ QList<ImdnStatus> ChatMessageCore::computeDeliveryStatus(const std::shared_ptr<l
auto addrString = Utils::coreStringToAppString(address->asStringUriOnly());
auto imdn =
ImdnStatus::createMessageImdnStatusVariant(addrString, LinphoneEnums::fromLinphone(state), lastUpdated);
imdnStatusList.append(imdn);
return imdn;
}
return ImdnStatus();
};
// Read
for (auto &participant : message->getParticipantsByImdnState(linphone::ChatMessage::State::Displayed)) {
createImdnStatus(participant, linphone::ChatMessage::State::Displayed);
auto imdn = createImdnStatus(participant, linphone::ChatMessage::State::Displayed);
imdnStatusList.append(imdn);
}
// Received
for (auto &participant : message->getParticipantsByImdnState(linphone::ChatMessage::State::DeliveredToUser)) {
createImdnStatus(participant, linphone::ChatMessage::State::DeliveredToUser);
auto imdn = createImdnStatus(participant, linphone::ChatMessage::State::DeliveredToUser);
imdnStatusList.append(imdn);
}
// Sent
for (auto &participant : message->getParticipantsByImdnState(linphone::ChatMessage::State::Delivered)) {
createImdnStatus(participant, linphone::ChatMessage::State::Delivered);
auto imdn = createImdnStatus(participant, linphone::ChatMessage::State::Delivered);
imdnStatusList.append(imdn);
}
// Error
for (auto &participant : message->getParticipantsByImdnState(linphone::ChatMessage::State::NotDelivered)) {
createImdnStatus(participant, linphone::ChatMessage::State::NotDelivered);
auto imdn = createImdnStatus(participant, linphone::ChatMessage::State::NotDelivered);
imdnStatusList.append(imdn);
}
return imdnStatusList;
}
@ -592,20 +609,25 @@ QStringList ChatMessageCore::getImdnStatusListLabels() const {
QList<QVariant> ChatMessageCore::getImdnStatusAsSingletons() const {
QList<QVariant> statusSingletons;
statusSingletons.append(createImdnStatusSingletonVariant(LinphoneEnums::ChatMessageState::StateDisplayed, 0));
statusSingletons.append(createImdnStatusSingletonVariant(LinphoneEnums::ChatMessageState::StateDelivered, 0));
statusSingletons.append(createImdnStatusSingletonVariant(LinphoneEnums::ChatMessageState::StateDeliveredToUser, 0));
statusSingletons.append(createImdnStatusSingletonVariant(LinphoneEnums::ChatMessageState::StateNotDelivered, 0));
for (auto &stat : mImdnStatusList) {
auto it = std::find_if(statusSingletons.begin(), statusSingletons.end(), [state = stat.mState](QVariant data) {
auto dataState = data.toMap()["state"].value<LinphoneEnums::ChatMessageState>();
return state == dataState;
});
if (it == statusSingletons.end()) statusSingletons.push_back(createImdnStatusSingletonVariant(stat.mState, 1));
else {
if (it == statusSingletons.end()) {
if (!stat.mAddress.isEmpty()) statusSingletons.append(createImdnStatusSingletonVariant(stat.mState, 1));
} else {
auto map = it->toMap();
auto count = map["count"].toInt();
++count;
map.remove("count");
map.insert("count", count);
statusSingletons.erase(it);
statusSingletons.push_back(map);
statusSingletons.append(map);
}
}
return statusSingletons;

View file

@ -46,6 +46,8 @@ public:
LinphoneEnums::ChatMessageState mState;
QDateTime mLastUpdatedTime;
ImdnStatus(const QString &address, const LinphoneEnums::ChatMessageState &state, QDateTime mLastUpdatedTime);
ImdnStatus();
ImdnStatus operator=(ImdnStatus r);
bool operator==(const ImdnStatus &r) const;
bool operator!=(ImdnStatus r);

View file

@ -236,7 +236,9 @@ QVariant ConferenceInfoList::data(const QModelIndex &index, int role) const {
if (role == Qt::DisplayRole) {
return QVariant::fromValue(new ConferenceInfoGui(mList[row].objectCast<ConferenceInfoCore>()));
} else if (role == Qt::DisplayRole + 1) {
return Utils::toDateMonthString(mList[row].objectCast<ConferenceInfoCore>()->getDateTimeUtc());
auto date = mList[row].objectCast<ConferenceInfoCore>()->getDateTimeUtc();
if (date.date().year() != QDate::currentDate().year()) return Utils::toDateMonthAndYearString(date);
else return Utils::toDateMonthString(date);
}
} else { // Dummy date
if (role == Qt::DisplayRole) {

View file

@ -1712,14 +1712,14 @@
<context>
<name>ChatAudioContent</name>
<message>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="28"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="68"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="36"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="78"/>
<source>information_popup_error_title</source>
<extracomment>Error</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="30"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="38"/>
<source>information_popup_voice_message_error_message</source>
<extracomment>Failed to create voice message : error in recorder</extracomment>
<translation type="unfinished"></translation>
@ -1728,13 +1728,13 @@
<context>
<name>ChatCore</name>
<message>
<location filename="../../core/chat/ChatCore.cpp" line="164"/>
<location filename="../../core/chat/ChatCore.cpp" line="166"/>
<source>info_toast_deleted_title</source>
<extracomment>Deleted</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/ChatCore.cpp" line="166"/>
<location filename="../../core/chat/ChatCore.cpp" line="168"/>
<source>info_toast_deleted_message_history</source>
<extracomment>Message history has been deleted</extracomment>
<translation type="unfinished"></translation>
@ -1807,79 +1807,79 @@
<context>
<name>ChatMessage</name>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="416"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="420"/>
<source>chat_message_copy_selection</source>
<extracomment>&quot;Copy selection&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="418"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="422"/>
<source>chat_message_copy</source>
<extracomment>&quot;Copy&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="426"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="430"/>
<source>chat_message_copied_to_clipboard_title</source>
<extracomment>Copied</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="428"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="432"/>
<source>chat_message_copied_to_clipboard_toast</source>
<extracomment>&quot;to clipboard&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="126"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="129"/>
<source>chat_message_remote_replied</source>
<extracomment>%1 replied</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="93"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="96"/>
<source>chat_message_forwarded</source>
<extracomment>Forwarded</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="124"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="127"/>
<source>chat_message_remote_replied_to</source>
<extracomment>%1 replied to %2</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="129"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="132"/>
<source>chat_message_user_replied_to</source>
<extracomment>You replied to %1</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="131"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="134"/>
<source>chat_message_user_replied</source>
<extracomment>You replied</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="391"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="395"/>
<source>chat_message_reception_info</source>
<extracomment>&quot;Reception info&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="403"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="407"/>
<source>chat_message_reply</source>
<extracomment>Reply</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="435"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="439"/>
<source>chat_message_forward</source>
<extracomment>Forward</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="452"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="456"/>
<source>chat_message_delete</source>
<extracomment>&quot;Delete&quot;</extracomment>
<translation type="unfinished"></translation>
@ -2034,45 +2034,45 @@ Error</extracomment>
<context>
<name>ChatMessagesListView</name>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="33"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="47"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="34"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="48"/>
<source>popup_info_find_message_title</source>
<extracomment>Find message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="35"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="36"/>
<source>info_popup_no_result_message</source>
<extracomment>No result found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="49"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="50"/>
<source>info_popup_first_result_message</source>
<extracomment>First result reached</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="51"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="52"/>
<source>info_popup_last_result_message</source>
<extracomment>Last result reached</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="126"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="132"/>
<source>chat_message_list_encrypted_header_title</source>
<extracomment>End to end encrypted chat</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="136"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="142"/>
<source>chat_message_list_encrypted_header_message</source>
<extracomment>Les messages de cette conversation sont chiffrés de bout
en bout. Seul votre correspondant peut les déchiffrer.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="275"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="295"/>
<source>chat_message_is_writing_info</source>
<extracomment>%1 is writing</extracomment>
<translation type="unfinished"></translation>
@ -2093,79 +2093,79 @@ Error</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="71"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="68"/>
<source>chat_dialog_delete_chat_title</source>
<extracomment>Supprimer la conversation ?</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="73"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="70"/>
<source>chat_dialog_delete_chat_message</source>
<extracomment>&quot;La conversation et tous ses messages seront supprimés.&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="102"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="99"/>
<source>chat_list_title</source>
<extracomment>&quot;Conversations&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="123"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="120"/>
<source>menu_mark_all_as_read</source>
<extracomment>&quot;mark all as read&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="154"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="151"/>
<source>chat_search_in_history</source>
<extracomment>&quot;Rechercher une conversation&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="177"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="174"/>
<source>list_filter_no_result_found</source>
<extracomment>&quot;Aucun résultat&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="179"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="176"/>
<source>chat_list_empty_history</source>
<extracomment>&quot;Aucune conversation dans votre historique&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="248"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="246"/>
<source>chat_action_start_new_chat</source>
<extracomment>&quot;New chat&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="284"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="282"/>
<source>chat_start_group_chat_title</source>
<extracomment>&quot;Nouveau groupe&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="286"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="284"/>
<source>chat_action_start_group_chat</source>
<extracomment>&quot;Créer&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="312"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="316"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="310"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="314"/>
<source>information_popup_error_title</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="314"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="312"/>
<source>group_chat_error_must_have_name</source>
<extracomment>&quot;Un nom doit être donné au groupe</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="318"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="316"/>
<source>group_call_error_not_connected</source>
<extracomment>&quot;Vous n&apos;etes pas connecté&quot;</extracomment>
<translation type="unfinished">Sie sind nicht verbunden</translation>
@ -2784,6 +2784,150 @@ Error</extracomment>
<translation>Hinzufügen</translation>
</message>
</context>
<context>
<name>ConversationInfos</name>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="156"/>
<source>one_one_infos_call</source>
<extracomment>&quot;Appel&quot;</extracomment>
<translation type="unfinished">Anrufen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="170"/>
<source>one_one_infos_unmute</source>
<extracomment>&quot;Sourdine&quot;</extracomment>
<translation type="unfinished">Unmute</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="170"/>
<source>one_one_infos_mute</source>
<translation type="unfinished">Stummschalten</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="186"/>
<source>one_one_infos_search</source>
<extracomment>&quot;Rechercher&quot;</extracomment>
<translation type="unfinished">Suchen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="212"/>
<source>group_infos_participants</source>
<translation type="unfinished">Participants (%1)</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="229"/>
<source>group_infos_media_docs</source>
<extracomment>Medias &amp; documents</extracomment>
<translation type="unfinished">Medien &amp; Dokumente</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="235"/>
<source>group_infos_shared_medias</source>
<extracomment>Shared medias</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="246"/>
<source>group_infos_shared_docs</source>
<extracomment>Shared documents</extracomment>
<translation type="unfinished">Geteilte Dokumente</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="259"/>
<source>group_infos_other_actions</source>
<extracomment>Other actions</extracomment>
<translation type="unfinished">Weitere Aktionen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="265"/>
<source>group_infos_ephemerals</source>
<translation type="unfinished">Ephemeral messages : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="265"/>
<source>group_infos_enable_ephemerals</source>
<translation type="unfinished">Flüchtige Nachrichten aktivieren</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="278"/>
<source>group_infos_meeting</source>
<extracomment>Schedule a meeting</extracomment>
<translation type="unfinished">Meeting</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="287"/>
<source>group_infos_leave_room</source>
<extracomment>Leave chat room</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="292"/>
<source>group_infos_leave_room_toast_title</source>
<extracomment>Leave Chat Room ?</extracomment>
<translation type="unfinished">Chatraum verlassen?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="294"/>
<source>group_infos_leave_room_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation type="unfinished">Alle Nachrichten werden aus dem Chat entfernt. Möchten Sie fortfahren?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="307"/>
<source>group_infos_delete_history</source>
<extracomment>Delete history</extracomment>
<translation type="unfinished">Verlauf löschen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="312"/>
<source>group_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation type="unfinished">Verlauf löschen?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="314"/>
<source>group_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation type="unfinished">Alle Nachrichten werden aus dem Chat entfernt. Möchten Sie fortfahren?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="328"/>
<source>one_one_infos_open_contact</source>
<translation type="unfinished">Kontakt öffnen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="328"/>
<source>one_one_infos_create_contact</source>
<translation type="unfinished">Kontakt erstellen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="342"/>
<source>one_one_infos_ephemerals</source>
<translation type="unfinished">Ephemeral messages : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="342"/>
<source>one_one_infos_enable_ephemerals</source>
<translation type="unfinished">Flüchtige Nachrichten aktivieren</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="352"/>
<source>one_one_infos_delete_history</source>
<translation type="unfinished">Verlauf löschen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="357"/>
<source>one_one_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation type="unfinished">Verlauf löschen?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="359"/>
<source>one_one_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation type="unfinished">Alle Nachrichten werden aus dem Chat entfernt. Möchten Sie fortfahren?</translation>
</message>
</context>
<context>
<name>CreationFormLayout</name>
<message>
@ -3016,58 +3160,58 @@ Error</extracomment>
<context>
<name>EventLogCore</name>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="91"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="95"/>
<source>conference_created_event</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="94"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="98"/>
<source>conference_created_terminated</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="98"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="102"/>
<source>conference_participant_added_event</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="102"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="106"/>
<source>conference_participant_removed_event</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="111"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="113"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="115"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="117"/>
<source>conference_security_event</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="120"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="124"/>
<source>conference_ephemeral_message_enabled_event</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="126"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="130"/>
<source>conference_ephemeral_message_lifetime_changed_event</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="131"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="135"/>
<source>conference_ephemeral_message_disabled_event</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="135"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="139"/>
<source>conference_subject_changed_event</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="143"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="147"/>
<source>conference_participant_unset_admin_event</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="139"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="143"/>
<source>conference_participant_set_admin_event</source>
<translation type="unfinished"></translation>
</message>
@ -3160,118 +3304,6 @@ Error</extracomment>
<translation>Participant will be removed from chat room.</translation>
</message>
</context>
<context>
<name>GroupConversationInfos</name>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="144"/>
<source>group_infos_call</source>
<extracomment>&quot;Appel&quot;</extracomment>
<translation>Anrufen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="129"/>
<source>group_infos_mute</source>
<translation>Stummschalten</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="129"/>
<source>group_infos_unmute</source>
<extracomment>&quot;Sourdine&quot;</extracomment>
<translation>Unmute</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="158"/>
<source>group_infos_search</source>
<extracomment>&quot;Rechercher&quot;</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="254"/>
<source>group_infos_meeting</source>
<extracomment>Schedule a meeting</extracomment>
<translation>Meeting</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="169"/>
<source>group_infos_participants</source>
<translation>Participants (%1)</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="206"/>
<source>group_infos_media_docs</source>
<extracomment>Medias &amp; documents</extracomment>
<translation>Medien &amp; Dokumente</translation>
</message>
<message>
<source>group_infos_shared_media</source>
<extracomment>Shared medias</extracomment>
<translation type="vanished">Geteilte Medien</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="223"/>
<source>group_infos_shared_docs</source>
<extracomment>Shared documents</extracomment>
<translation>Geteilte Dokumente</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="236"/>
<source>group_infos_other_actions</source>
<extracomment>Other actions</extracomment>
<translation>Weitere Aktionen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="241"/>
<source>group_infos_enable_ephemerals</source>
<translation>Flüchtige Nachrichten aktivieren</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="241"/>
<source>group_infos_ephemerals</source>
<translation>Ephemeral messages : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="263"/>
<source>group_infos_leave_room</source>
<extracomment>Leave chat room</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="283"/>
<source>group_infos_delete_history</source>
<extracomment>Delete history</extracomment>
<translation>Verlauf löschen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="288"/>
<source>group_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation>Verlauf löschen?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="290"/>
<source>group_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>Alle Nachrichten werden aus dem Chat entfernt. Möchten Sie fortfahren?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="268"/>
<source>group_infos_leave_room_toast_title</source>
<extracomment>Leave Chat Room ?</extracomment>
<translation>Chatraum verlassen?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="212"/>
<source>group_infos_shared_medias</source>
<extracomment>Shared medias</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="270"/>
<source>group_infos_leave_room_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>Alle Nachrichten werden aus dem Chat entfernt. Möchten Sie fortfahren?</translation>
</message>
</context>
<context>
<name>GroupCreationFormLayout</name>
<message>
@ -4374,89 +4406,6 @@ Error</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>OneOneConversationInfos</name>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="74"/>
<source>one_one_infos_call</source>
<extracomment>&quot;Appel&quot;</extracomment>
<translation>Anrufen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="88"/>
<source>one_one_infos_mute</source>
<translation>Stummschalten</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="88"/>
<source>one_one_infos_unmute</source>
<extracomment>&quot;Sourdine&quot;</extracomment>
<translation>Unmute</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="104"/>
<source>one_one_infos_search</source>
<extracomment>&quot;Rechercher&quot;</extracomment>
<translation>Suchen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="115"/>
<source>one_one_infos_media_docs</source>
<translation>Medien &amp; Dokumente</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="120"/>
<source>one_one_infos_shared_media</source>
<translation>Geteilte Medien</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="130"/>
<source>one_one_infos_shared_docs</source>
<translation>Geteilte Dokumente</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="144"/>
<source>one_one_infos_other_actions</source>
<translation>Weitere Aktionen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="163"/>
<source>one_one_infos_enable_ephemerals</source>
<translation>Flüchtige Nachrichten aktivieren</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="163"/>
<source>one_one_infos_ephemerals</source>
<translation>Ephemeral messages : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="173"/>
<source>one_one_infos_delete_history</source>
<translation>Verlauf löschen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="178"/>
<source>one_one_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation>Verlauf löschen?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="180"/>
<source>one_one_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>Alle Nachrichten werden aus dem Chat entfernt. Möchten Sie fortfahren?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="149"/>
<source>one_one_infos_open_contact</source>
<translation>Kontakt öffnen</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="149"/>
<source>one_one_infos_create_contact</source>
<translation>Kontakt erstellen</translation>
</message>
</context>
<context>
<name>ParticipantListView</name>
<message>
@ -4980,13 +4929,13 @@ Pour les activer dans un projet commercial, merci de nous contacter.</source>
<context>
<name>SecuritySettingsLayout</name>
<message>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="29"/>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="28"/>
<source>settings_security_enable_vfs_title</source>
<extracomment>&quot;Chiffrer tous les fichiers&quot;</extracomment>
<translation>Alle Dateien verschlüsseln</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="31"/>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="30"/>
<source>settings_security_enable_vfs_subtitle</source>
<extracomment>&quot;Attention, vous ne pourrez pas revenir en arrière !&quot;</extracomment>
<translation>Warnung: Einmal aktiviert, kann es nicht mehr deaktiviert werden!</translation>
@ -5006,25 +4955,25 @@ Pour les activer dans un projet commercial, merci de nous contacter.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="585"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="600"/>
<source>shared_medias_title</source>
<extracomment>Shared medias</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="587"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="602"/>
<source>shared_documents_title</source>
<extracomment>Shared documents</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="616"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="631"/>
<source>forward_to_title</source>
<extracomment>Forward to</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="650"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="665"/>
<source>conversations_title</source>
<extracomment>Conversations</extracomment>
<translation type="unfinished"></translation>
@ -5070,36 +5019,42 @@ Pour les activer dans un projet commercial, merci de nous contacter.</source>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="27"/>
<source>settings_network_title</source>
<extracomment>&quot;Affichage&quot; &quot;Réseau&quot;</extracomment>
<translation>Netzwerk</translation>
<source>settings_security_title</source>
<extracomment>&quot;Affichage&quot; &quot;Security&quot;</extracomment>
<translation type="unfinished">Sicherheit / Verschlüsselung</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="29"/>
<source>settings_network_title</source>
<extracomment>&quot;Réseau&quot;</extracomment>
<translation>Netzwerk</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="31"/>
<source>settings_advanced_title</source>
<extracomment>&quot;Paramètres avancés&quot;</extracomment>
<translation>Erweiterte Einstellungen</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="34"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="36"/>
<source>contact_editor_popup_abort_confirmation_title</source>
<extracomment>Modifications non enregistrées</extracomment>
<translation>Ungespeicherte Änderungen</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="36"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="38"/>
<source>contact_editor_popup_abort_confirmation_message</source>
<extracomment>Vous avez des modifications non enregistrées. Si vous quittez cette page, vos changements seront perdus. Voulez-vous enregistrer vos modifications avant de continuer ?</extracomment>
<translation>Sie haben ungespeicherte Änderungen. Wenn Sie diese Seite verlassen, gehen Ihre Änderungen verloren. Möchten Sie Ihre Änderungen speichern, bevor Sie fortfahren?</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="46"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="48"/>
<source>contact_editor_dialog_abort_confirmation_do_not_save</source>
<extracomment>&quot;Ne pas enregistrer&quot;</extracomment>
<translation>Nicht speichern</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="48"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="50"/>
<source>contact_editor_dialog_abort_confirmation_save</source>
<extracomment>&quot;Enregistrer&quot;</extracomment>
<translation>Speichern</translation>

View file

@ -1674,14 +1674,14 @@
<context>
<name>ChatAudioContent</name>
<message>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="28"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="68"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="36"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="78"/>
<source>information_popup_error_title</source>
<extracomment>Error</extracomment>
<translation>Error</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="30"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="38"/>
<source>information_popup_voice_message_error_message</source>
<extracomment>Failed to create voice message : error in recorder</extracomment>
<translation>Failed to create voice message : error in recorder</translation>
@ -1690,13 +1690,13 @@
<context>
<name>ChatCore</name>
<message>
<location filename="../../core/chat/ChatCore.cpp" line="164"/>
<location filename="../../core/chat/ChatCore.cpp" line="166"/>
<source>info_toast_deleted_title</source>
<extracomment>Deleted</extracomment>
<translation>Deleted</translation>
</message>
<message>
<location filename="../../core/chat/ChatCore.cpp" line="166"/>
<location filename="../../core/chat/ChatCore.cpp" line="168"/>
<source>info_toast_deleted_message_history</source>
<extracomment>Message history has been deleted</extracomment>
<translation>Message history has been deleted</translation>
@ -1769,79 +1769,79 @@
<context>
<name>ChatMessage</name>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="416"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="420"/>
<source>chat_message_copy_selection</source>
<extracomment>&quot;Copy selection&quot;</extracomment>
<translation>Copy selection</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="418"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="422"/>
<source>chat_message_copy</source>
<extracomment>&quot;Copy&quot;</extracomment>
<translation>Copy</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="426"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="430"/>
<source>chat_message_copied_to_clipboard_title</source>
<extracomment>Copied</extracomment>
<translation>Copied</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="428"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="432"/>
<source>chat_message_copied_to_clipboard_toast</source>
<extracomment>&quot;to clipboard&quot;</extracomment>
<translation>in clipboard</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="126"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="129"/>
<source>chat_message_remote_replied</source>
<extracomment>%1 replied</extracomment>
<translation>%1 replied to</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="93"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="96"/>
<source>chat_message_forwarded</source>
<extracomment>Forwarded</extracomment>
<translation>Forwarded</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="124"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="127"/>
<source>chat_message_remote_replied_to</source>
<extracomment>%1 replied to %2</extracomment>
<translation>%1 replied to %2</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="129"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="132"/>
<source>chat_message_user_replied_to</source>
<extracomment>You replied to %1</extracomment>
<translation>You replied to %1</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="131"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="134"/>
<source>chat_message_user_replied</source>
<extracomment>You replied</extracomment>
<translation>You replied</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="391"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="395"/>
<source>chat_message_reception_info</source>
<extracomment>&quot;Reception info&quot;</extracomment>
<translation>Reception info</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="403"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="407"/>
<source>chat_message_reply</source>
<extracomment>Reply</extracomment>
<translation>Reply</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="435"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="439"/>
<source>chat_message_forward</source>
<extracomment>Forward</extracomment>
<translation>Forward</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="452"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="456"/>
<source>chat_message_delete</source>
<extracomment>&quot;Delete&quot;</extracomment>
<translation>Delete</translation>
@ -1996,38 +1996,38 @@ Error</extracomment>
<context>
<name>ChatMessagesListView</name>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="33"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="47"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="34"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="48"/>
<source>popup_info_find_message_title</source>
<extracomment>Find message</extracomment>
<translation>Find message</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="35"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="36"/>
<source>info_popup_no_result_message</source>
<extracomment>No result found</extracomment>
<translation>No result found</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="49"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="50"/>
<source>info_popup_first_result_message</source>
<extracomment>First result reached</extracomment>
<translation>First result reached</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="51"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="52"/>
<source>info_popup_last_result_message</source>
<extracomment>Last result reached</extracomment>
<translation>Last result reached</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="126"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="132"/>
<source>chat_message_list_encrypted_header_title</source>
<extracomment>End to end encrypted chat</extracomment>
<translation>End to end encrypted chat</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="136"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="142"/>
<source>chat_message_list_encrypted_header_message</source>
<extracomment>Les messages de cette conversation sont chiffrés de bout
en bout. Seul votre correspondant peut les déchiffrer.</extracomment>
@ -2035,7 +2035,7 @@ Error</extracomment>
Only your correspondent can decrypt them.</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="275"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="295"/>
<source>chat_message_is_writing_info</source>
<extracomment>%1 is writing</extracomment>
<translation>%1 is writing</translation>
@ -2056,79 +2056,79 @@ Only your correspondent can decrypt them.</translation>
<translation>No conversation</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="71"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="68"/>
<source>chat_dialog_delete_chat_title</source>
<extracomment>Supprimer la conversation ?</extracomment>
<translation>Delete conversation ?</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="73"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="70"/>
<source>chat_dialog_delete_chat_message</source>
<extracomment>&quot;La conversation et tous ses messages seront supprimés.&quot;</extracomment>
<translation>This conversation and all its messages will be deleted.</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="102"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="99"/>
<source>chat_list_title</source>
<extracomment>&quot;Conversations&quot;</extracomment>
<translation>Conversations</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="123"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="120"/>
<source>menu_mark_all_as_read</source>
<extracomment>&quot;mark all as read&quot;</extracomment>
<translation>Mark all as read</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="154"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="151"/>
<source>chat_search_in_history</source>
<extracomment>&quot;Rechercher une conversation&quot;</extracomment>
<translation>Search for a chat</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="177"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="174"/>
<source>list_filter_no_result_found</source>
<extracomment>&quot;Aucun résultat&quot;</extracomment>
<translation>No result</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="179"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="176"/>
<source>chat_list_empty_history</source>
<extracomment>&quot;Aucune conversation dans votre historique&quot;</extracomment>
<translation>No conversation in history</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="248"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="246"/>
<source>chat_action_start_new_chat</source>
<extracomment>&quot;New chat&quot;</extracomment>
<translation>New conversation</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="284"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="282"/>
<source>chat_start_group_chat_title</source>
<extracomment>&quot;Nouveau groupe&quot;</extracomment>
<translation>New group</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="286"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="284"/>
<source>chat_action_start_group_chat</source>
<extracomment>&quot;Créer&quot;</extracomment>
<translation>Create</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="312"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="316"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="310"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="314"/>
<source>information_popup_error_title</source>
<translation>Error</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="314"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="312"/>
<source>group_chat_error_must_have_name</source>
<extracomment>&quot;Un nom doit être donné au groupe</extracomment>
<translation>A name must be set for the group</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="318"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="316"/>
<source>group_call_error_not_connected</source>
<extracomment>&quot;Vous n&apos;etes pas connecté&quot;</extracomment>
<translation>You are not connected</translation>
@ -2707,6 +2707,150 @@ Only your correspondent can decrypt them.</translation>
<translation>Add</translation>
</message>
</context>
<context>
<name>ConversationInfos</name>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="156"/>
<source>one_one_infos_call</source>
<extracomment>&quot;Appel&quot;</extracomment>
<translation>Call</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="170"/>
<source>one_one_infos_unmute</source>
<extracomment>&quot;Sourdine&quot;</extracomment>
<translation>Unmute</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="170"/>
<source>one_one_infos_mute</source>
<translation>Mute</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="186"/>
<source>one_one_infos_search</source>
<extracomment>&quot;Rechercher&quot;</extracomment>
<translation>Search</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="212"/>
<source>group_infos_participants</source>
<translation>Participants (%1)</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="229"/>
<source>group_infos_media_docs</source>
<extracomment>Medias &amp; documents</extracomment>
<translation>Medias &amp; documents</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="235"/>
<source>group_infos_shared_medias</source>
<extracomment>Shared medias</extracomment>
<translation>Shared medias</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="246"/>
<source>group_infos_shared_docs</source>
<extracomment>Shared documents</extracomment>
<translation>Shared documents</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="259"/>
<source>group_infos_other_actions</source>
<extracomment>Other actions</extracomment>
<translation>Other actions</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="265"/>
<source>group_infos_ephemerals</source>
<translation>Ephemeral messages : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="265"/>
<source>group_infos_enable_ephemerals</source>
<translation>Enable ephemeral messages</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="278"/>
<source>group_infos_meeting</source>
<extracomment>Schedule a meeting</extracomment>
<translation>Schedule a meeting</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="287"/>
<source>group_infos_leave_room</source>
<extracomment>Leave chat room</extracomment>
<translation>Leave Chat Room</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="292"/>
<source>group_infos_leave_room_toast_title</source>
<extracomment>Leave Chat Room ?</extracomment>
<translation>Leave Chat Room ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="294"/>
<source>group_infos_leave_room_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>All the messages will be removed from the chat room. Do you want to continue ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="307"/>
<source>group_infos_delete_history</source>
<extracomment>Delete history</extracomment>
<translation>Delete history</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="312"/>
<source>group_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation>Delete history ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="314"/>
<source>group_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>All the messages will be removed from the chat room. Do you want to continue ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="328"/>
<source>one_one_infos_open_contact</source>
<translation>Show contact</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="328"/>
<source>one_one_infos_create_contact</source>
<translation>Create contact</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="342"/>
<source>one_one_infos_ephemerals</source>
<translation>Ephemeral messages : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="342"/>
<source>one_one_infos_enable_ephemerals</source>
<translation>Enable ephemeral messages</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="352"/>
<source>one_one_infos_delete_history</source>
<translation>Delete history</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="357"/>
<source>one_one_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation>Delete history ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="359"/>
<source>one_one_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>All the messages will be removed from the chat room. Do you want to continue ?</translation>
</message>
</context>
<context>
<name>CreationFormLayout</name>
<message>
@ -2939,59 +3083,59 @@ Only your correspondent can decrypt them.</translation>
<context>
<name>EventLogCore</name>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="91"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="95"/>
<source>conference_created_event</source>
<translation>You have joined the group</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="94"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="98"/>
<source>conference_created_terminated</source>
<translation>You have left the group</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="98"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="102"/>
<source>conference_participant_added_event</source>
<translation>%1 has joined</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="102"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="106"/>
<source>conference_participant_removed_event</source>
<translation>%1 is no longer in the conversation</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="139"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="143"/>
<source>conference_participant_set_admin_event</source>
<translation>%1 is now an admin</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="143"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="147"/>
<source>conference_participant_unset_admin_event</source>
<translation>%1 is no longer an admin</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="111"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="113"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="115"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="117"/>
<source>conference_security_event</source>
<translation>Security level degraded by %1</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="120"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="124"/>
<source>conference_ephemeral_message_enabled_event</source>
<translation>Ephemeral messages enabled
Expiration : %1</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="131"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="135"/>
<source>conference_ephemeral_message_disabled_event</source>
<translation>Ephemeral messages disabled</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="135"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="139"/>
<source>conference_subject_changed_event</source>
<translation>New subject: %1</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="126"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="130"/>
<source>conference_ephemeral_message_lifetime_changed_event</source>
<translation>Ephemeral messages updated
Expiration : %1</translation>
@ -3085,113 +3229,6 @@ Expiration : %1</translation>
<translation>Participant will be removed from chat room.</translation>
</message>
</context>
<context>
<name>GroupConversationInfos</name>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="144"/>
<source>group_infos_call</source>
<extracomment>&quot;Appel&quot;</extracomment>
<translation>Call</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="129"/>
<source>group_infos_mute</source>
<translation>Mute</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="129"/>
<source>group_infos_unmute</source>
<extracomment>&quot;Sourdine&quot;</extracomment>
<translation>Unmute</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="254"/>
<source>group_infos_meeting</source>
<extracomment>Schedule a meeting</extracomment>
<translation>Schedule a meeting</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="169"/>
<source>group_infos_participants</source>
<translation>Participants (%1)</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="158"/>
<source>group_infos_search</source>
<extracomment>&quot;Rechercher&quot;</extracomment>
<translation>Search</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="206"/>
<source>group_infos_media_docs</source>
<extracomment>Medias &amp; documents</extracomment>
<translation>Medias &amp; documents</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="212"/>
<source>group_infos_shared_medias</source>
<extracomment>Shared medias</extracomment>
<translation>Shared medias</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="223"/>
<source>group_infos_shared_docs</source>
<extracomment>Shared documents</extracomment>
<translation>Shared documents</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="236"/>
<source>group_infos_other_actions</source>
<extracomment>Other actions</extracomment>
<translation>Other actions</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="241"/>
<source>group_infos_enable_ephemerals</source>
<translation>Enable ephemeral messages</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="241"/>
<source>group_infos_ephemerals</source>
<translation>Ephemeral messages : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="283"/>
<source>group_infos_delete_history</source>
<extracomment>Delete history</extracomment>
<translation>Delete history</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="288"/>
<source>group_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation>Delete history ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="290"/>
<source>group_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>All the messages will be removed from the chat room. Do you want to continue ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="263"/>
<source>group_infos_leave_room</source>
<extracomment>Leave chat room</extracomment>
<translation>Leave Chat Room</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="268"/>
<source>group_infos_leave_room_toast_title</source>
<extracomment>Leave Chat Room ?</extracomment>
<translation>Leave Chat Room ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="270"/>
<source>group_infos_leave_room_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>All the messages will be removed from the chat room. Do you want to continue ?</translation>
</message>
</context>
<context>
<name>GroupCreationFormLayout</name>
<message>
@ -4280,89 +4317,6 @@ Expiration : %1</translation>
<translation>No token endpoint found in OpenID configuration</translation>
</message>
</context>
<context>
<name>OneOneConversationInfos</name>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="74"/>
<source>one_one_infos_call</source>
<extracomment>&quot;Appel&quot;</extracomment>
<translation>Call</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="88"/>
<source>one_one_infos_mute</source>
<translation>Mute</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="88"/>
<source>one_one_infos_unmute</source>
<extracomment>&quot;Sourdine&quot;</extracomment>
<translation>Unmute</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="104"/>
<source>one_one_infos_search</source>
<extracomment>&quot;Rechercher&quot;</extracomment>
<translation>Search</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="115"/>
<source>one_one_infos_media_docs</source>
<translation>Medias &amp; documents</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="120"/>
<source>one_one_infos_shared_media</source>
<translation>Shared medias</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="130"/>
<source>one_one_infos_shared_docs</source>
<translation>Shared documents</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="144"/>
<source>one_one_infos_other_actions</source>
<translation>Other actions</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="163"/>
<source>one_one_infos_enable_ephemerals</source>
<translation>Enable ephemeral messages</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="163"/>
<source>one_one_infos_ephemerals</source>
<translation>Ephemeral messages : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="173"/>
<source>one_one_infos_delete_history</source>
<translation>Delete history</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="178"/>
<source>one_one_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation>Delete history ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="180"/>
<source>one_one_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>All the messages will be removed from the chat room. Do you want to continue ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="149"/>
<source>one_one_infos_open_contact</source>
<translation>Show contact</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="149"/>
<source>one_one_infos_create_contact</source>
<translation>Create contact</translation>
</message>
</context>
<context>
<name>ParticipantListView</name>
<message>
@ -4874,13 +4828,13 @@ To enable them in a commercial project, please contact us.</translation>
<context>
<name>SecuritySettingsLayout</name>
<message>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="29"/>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="28"/>
<source>settings_security_enable_vfs_title</source>
<extracomment>&quot;Chiffrer tous les fichiers&quot;</extracomment>
<translation>Encrypt all files</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="31"/>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="30"/>
<source>settings_security_enable_vfs_subtitle</source>
<extracomment>&quot;Attention, vous ne pourrez pas revenir en arrière !&quot;</extracomment>
<translation>Warning: once enabled it can\&apos;t be disabled!</translation>
@ -4900,25 +4854,25 @@ To enable them in a commercial project, please contact us.</translation>
<translation>Reply to %1</translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="585"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="600"/>
<source>shared_medias_title</source>
<extracomment>Shared medias</extracomment>
<translation>Shared medias</translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="587"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="602"/>
<source>shared_documents_title</source>
<extracomment>Shared documents</extracomment>
<translation>Shared documents</translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="616"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="631"/>
<source>forward_to_title</source>
<extracomment>Forward to</extracomment>
<translation>Froward to</translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="650"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="665"/>
<source>conversations_title</source>
<extracomment>Conversations</extracomment>
<translation>Conversations</translation>
@ -4964,36 +4918,42 @@ To enable them in a commercial project, please contact us.</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="27"/>
<source>settings_network_title</source>
<extracomment>&quot;Affichage&quot; &quot;Réseau&quot;</extracomment>
<translation>Network</translation>
<source>settings_security_title</source>
<extracomment>&quot;Affichage&quot; &quot;Security&quot;</extracomment>
<translation>Security / Encryption</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="29"/>
<source>settings_network_title</source>
<extracomment>&quot;Réseau&quot;</extracomment>
<translation>Network</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="31"/>
<source>settings_advanced_title</source>
<extracomment>&quot;Paramètres avancés&quot;</extracomment>
<translation>Advanced parameters</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="34"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="36"/>
<source>contact_editor_popup_abort_confirmation_title</source>
<extracomment>Modifications non enregistrées</extracomment>
<translation>Unsaved changes</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="36"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="38"/>
<source>contact_editor_popup_abort_confirmation_message</source>
<extracomment>Vous avez des modifications non enregistrées. Si vous quittez cette page, vos changements seront perdus. Voulez-vous enregistrer vos modifications avant de continuer ?</extracomment>
<translation>You have unsaved changes. If you leave this page, your changes will be lost. Do you want to save your changes before continuing?</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="46"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="48"/>
<source>contact_editor_dialog_abort_confirmation_do_not_save</source>
<extracomment>&quot;Ne pas enregistrer&quot;</extracomment>
<translation>Do not save</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="48"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="50"/>
<source>contact_editor_dialog_abort_confirmation_save</source>
<extracomment>&quot;Enregistrer&quot;</extracomment>
<translation>Save</translation>

View file

@ -1674,14 +1674,14 @@
<context>
<name>ChatAudioContent</name>
<message>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="28"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="68"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="36"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="78"/>
<source>information_popup_error_title</source>
<extracomment>Error</extracomment>
<translation>Erreur</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="30"/>
<location filename="../../view/Control/Display/Chat/ChatAudioContent.qml" line="38"/>
<source>information_popup_voice_message_error_message</source>
<extracomment>Failed to create voice message : error in recorder</extracomment>
<translation>Impossible de créer le message vocal : erreur avec l&apos;enregistreur</translation>
@ -1690,13 +1690,13 @@
<context>
<name>ChatCore</name>
<message>
<location filename="../../core/chat/ChatCore.cpp" line="164"/>
<location filename="../../core/chat/ChatCore.cpp" line="166"/>
<source>info_toast_deleted_title</source>
<extracomment>Deleted</extracomment>
<translation>Supprimé</translation>
</message>
<message>
<location filename="../../core/chat/ChatCore.cpp" line="166"/>
<location filename="../../core/chat/ChatCore.cpp" line="168"/>
<source>info_toast_deleted_message_history</source>
<extracomment>Message history has been deleted</extracomment>
<translation>L&apos;historique des messages a é supprimé</translation>
@ -1769,79 +1769,79 @@
<context>
<name>ChatMessage</name>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="416"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="420"/>
<source>chat_message_copy_selection</source>
<extracomment>&quot;Copy selection&quot;</extracomment>
<translation>Copier la sélection</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="418"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="422"/>
<source>chat_message_copy</source>
<extracomment>&quot;Copy&quot;</extracomment>
<translation>Copier</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="426"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="430"/>
<source>chat_message_copied_to_clipboard_title</source>
<extracomment>Copied</extracomment>
<translation>Copié</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="428"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="432"/>
<source>chat_message_copied_to_clipboard_toast</source>
<extracomment>&quot;to clipboard&quot;</extracomment>
<translation>dans le presse-papiers</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="126"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="129"/>
<source>chat_message_remote_replied</source>
<extracomment>%1 replied</extracomment>
<translation>%1 a répondu</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="93"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="96"/>
<source>chat_message_forwarded</source>
<extracomment>Forwarded</extracomment>
<translation>Transféré</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="124"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="127"/>
<source>chat_message_remote_replied_to</source>
<extracomment>%1 replied to %2</extracomment>
<translation>%1 a répondu à %2</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="129"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="132"/>
<source>chat_message_user_replied_to</source>
<extracomment>You replied to %1</extracomment>
<translation>Vous avez répondu à %1</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="131"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="134"/>
<source>chat_message_user_replied</source>
<extracomment>You replied</extracomment>
<translation>Vous avez répondu</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="391"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="395"/>
<source>chat_message_reception_info</source>
<extracomment>&quot;Reception info&quot;</extracomment>
<translation>Info de réception</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="403"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="407"/>
<source>chat_message_reply</source>
<extracomment>Reply</extracomment>
<translation>Répondre</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="435"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="439"/>
<source>chat_message_forward</source>
<extracomment>Forward</extracomment>
<translation>Transférer</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="452"/>
<location filename="../../view/Control/Display/Chat/ChatMessage.qml" line="456"/>
<source>chat_message_delete</source>
<extracomment>&quot;Delete&quot;</extracomment>
<translation>Supprimer</translation>
@ -1996,38 +1996,38 @@ Error</extracomment>
<context>
<name>ChatMessagesListView</name>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="33"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="47"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="34"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="48"/>
<source>popup_info_find_message_title</source>
<extracomment>Find message</extracomment>
<translation>Trouver un message</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="35"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="36"/>
<source>info_popup_no_result_message</source>
<extracomment>No result found</extracomment>
<translation>Aucun résultat trouvé</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="49"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="50"/>
<source>info_popup_first_result_message</source>
<extracomment>First result reached</extracomment>
<translation>Premier résultat atteint</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="51"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="52"/>
<source>info_popup_last_result_message</source>
<extracomment>Last result reached</extracomment>
<translation>Dernier résultat atteint</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="126"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="132"/>
<source>chat_message_list_encrypted_header_title</source>
<extracomment>End to end encrypted chat</extracomment>
<translation>Conversation chiffrée de bout en bout</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="136"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="142"/>
<source>chat_message_list_encrypted_header_message</source>
<extracomment>Les messages de cette conversation sont chiffrés de bout
en bout. Seul votre correspondant peut les déchiffrer.</extracomment>
@ -2035,7 +2035,7 @@ Error</extracomment>
en bout. Seul votre correspondant peut les déchiffrer.</translation>
</message>
<message>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="275"/>
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="295"/>
<source>chat_message_is_writing_info</source>
<extracomment>%1 is writing</extracomment>
<translation>%1 est en train d&apos;écrire</translation>
@ -2056,79 +2056,79 @@ en bout. Seul votre correspondant peut les déchiffrer.</translation>
<translation>Aucune conversation</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="71"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="68"/>
<source>chat_dialog_delete_chat_title</source>
<extracomment>Supprimer la conversation ?</extracomment>
<translation>Supprimer la conversation ?</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="73"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="70"/>
<source>chat_dialog_delete_chat_message</source>
<extracomment>&quot;La conversation et tous ses messages seront supprimés.&quot;</extracomment>
<translation>La conversation et tous ses messages seront supprimés.</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="102"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="99"/>
<source>chat_list_title</source>
<extracomment>&quot;Conversations&quot;</extracomment>
<translation>Conversations</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="123"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="120"/>
<source>menu_mark_all_as_read</source>
<extracomment>&quot;mark all as read&quot;</extracomment>
<translation>Tout marquer comme lu</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="154"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="151"/>
<source>chat_search_in_history</source>
<extracomment>&quot;Rechercher une conversation&quot;</extracomment>
<translation>Rechercher une conversation</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="177"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="174"/>
<source>list_filter_no_result_found</source>
<extracomment>&quot;Aucun résultat&quot;</extracomment>
<translation>Aucun résultat</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="179"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="176"/>
<source>chat_list_empty_history</source>
<extracomment>&quot;Aucune conversation dans votre historique&quot;</extracomment>
<translation>Aucune conversation dans votre historique</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="248"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="246"/>
<source>chat_action_start_new_chat</source>
<extracomment>&quot;New chat&quot;</extracomment>
<translation>Nouvelle conversation</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="284"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="282"/>
<source>chat_start_group_chat_title</source>
<extracomment>&quot;Nouveau groupe&quot;</extracomment>
<translation>Nouveau groupe</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="286"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="284"/>
<source>chat_action_start_group_chat</source>
<extracomment>&quot;Créer&quot;</extracomment>
<translation>Créer</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="312"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="316"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="310"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="314"/>
<source>information_popup_error_title</source>
<translation>Erreur</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="314"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="312"/>
<source>group_chat_error_must_have_name</source>
<extracomment>&quot;Un nom doit être donné au groupe</extracomment>
<translation>Un nom doit être donné au groupe</translation>
</message>
<message>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="318"/>
<location filename="../../view/Page/Main/Chat/ChatPage.qml" line="316"/>
<source>group_call_error_not_connected</source>
<extracomment>&quot;Vous n&apos;etes pas connecté&quot;</extracomment>
<translation>Vous n&apos;êtes pas connecté</translation>
@ -2707,6 +2707,150 @@ en bout. Seul votre correspondant peut les déchiffrer.</translation>
<translation>Ajouter</translation>
</message>
</context>
<context>
<name>ConversationInfos</name>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="156"/>
<source>one_one_infos_call</source>
<extracomment>&quot;Appel&quot;</extracomment>
<translation>Appel</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="170"/>
<source>one_one_infos_unmute</source>
<extracomment>&quot;Sourdine&quot;</extracomment>
<translation>Réactiver les notifications</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="170"/>
<source>one_one_infos_mute</source>
<translation>Sourdine</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="186"/>
<source>one_one_infos_search</source>
<extracomment>&quot;Rechercher&quot;</extracomment>
<translation>Rechercher</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="212"/>
<source>group_infos_participants</source>
<translation>Participants (%1)</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="229"/>
<source>group_infos_media_docs</source>
<extracomment>Medias &amp; documents</extracomment>
<translation>Medias &amp; documents</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="235"/>
<source>group_infos_shared_medias</source>
<extracomment>Shared medias</extracomment>
<translation>Médias partagés</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="246"/>
<source>group_infos_shared_docs</source>
<extracomment>Shared documents</extracomment>
<translation>Documents partagés</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="259"/>
<source>group_infos_other_actions</source>
<extracomment>Other actions</extracomment>
<translation>Autres actions</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="265"/>
<source>group_infos_ephemerals</source>
<translation>Messages éphémères : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="265"/>
<source>group_infos_enable_ephemerals</source>
<translation>Activer les messages éphémères</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="278"/>
<source>group_infos_meeting</source>
<extracomment>Schedule a meeting</extracomment>
<translation>Programmer une réunion</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="287"/>
<source>group_infos_leave_room</source>
<extracomment>Leave chat room</extracomment>
<translation>Quitter la conversation</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="292"/>
<source>group_infos_leave_room_toast_title</source>
<extracomment>Leave Chat Room ?</extracomment>
<translation>Quitter la conversation ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="294"/>
<source>group_infos_leave_room_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>Vous ne recevrez ni pourrez envoyer des messages dans cette conversation, quitter ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="307"/>
<source>group_infos_delete_history</source>
<extracomment>Delete history</extracomment>
<translation>Supprimer l&apos;historique</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="312"/>
<source>group_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation>Supprimer l&apos;historique ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="314"/>
<source>group_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>Tous les messages seront supprimés. Souhaitez-vous continuer ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="328"/>
<source>one_one_infos_open_contact</source>
<translation>Voir le contact</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="328"/>
<source>one_one_infos_create_contact</source>
<translation>Créer un contact</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="342"/>
<source>one_one_infos_ephemerals</source>
<translation>Messages éphémères : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="342"/>
<source>one_one_infos_enable_ephemerals</source>
<translation>Activer les messages éphémères</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="352"/>
<source>one_one_infos_delete_history</source>
<translation>Supprimer l&apos;historique</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="357"/>
<source>one_one_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation>Supprimer l&apos;historique ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/ConversationInfos.qml" line="359"/>
<source>one_one_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>Tous les messages seront supprimés. Souhaitez-vous continuer ?</translation>
</message>
</context>
<context>
<name>CreationFormLayout</name>
<message>
@ -2939,60 +3083,60 @@ en bout. Seul votre correspondant peut les déchiffrer.</translation>
<context>
<name>EventLogCore</name>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="91"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="95"/>
<source>conference_created_event</source>
<translation>Vous avez rejoint le groupe</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="94"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="98"/>
<source>conference_created_terminated</source>
<translation>Vous avez quitté le groupe</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="98"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="102"/>
<source>conference_participant_added_event</source>
<translation>%1 a rejoint le groupe</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="102"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="106"/>
<source>conference_participant_removed_event</source>
<translation>%1 ne fait plus partie du groupe</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="111"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="113"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="115"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="117"/>
<source>conference_security_event</source>
<translation>Niveau de sécurité dégradé par %1</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="120"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="124"/>
<source>conference_ephemeral_message_enabled_event</source>
<translation>Messages éphémères activés
Expiration : %1</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="126"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="130"/>
<source>conference_ephemeral_message_lifetime_changed_event</source>
<translation>Messages éphémères mis à jour
Expiration : %1</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="131"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="135"/>
<source>conference_ephemeral_message_disabled_event</source>
<translation>Messages éphémères désactivés</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="135"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="139"/>
<source>conference_subject_changed_event</source>
<translation>Nouveau sujet : %1</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="143"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="147"/>
<source>conference_participant_unset_admin_event</source>
<translation>%1 n&apos;est plus admin</translation>
</message>
<message>
<location filename="../../core/chat/message/EventLogCore.cpp" line="139"/>
<location filename="../../core/chat/message/EventLogCore.cpp" line="143"/>
<source>conference_participant_set_admin_event</source>
<translation>%1 est maintenant admin</translation>
</message>
@ -3085,113 +3229,6 @@ Expiration : %1</translation>
<translation>La participant sere retiré de la conversation</translation>
</message>
</context>
<context>
<name>GroupConversationInfos</name>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="144"/>
<source>group_infos_call</source>
<extracomment>&quot;Appel&quot;</extracomment>
<translation>Appel</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="129"/>
<source>group_infos_mute</source>
<translation>Sourdine</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="129"/>
<source>group_infos_unmute</source>
<extracomment>&quot;Sourdine&quot;</extracomment>
<translation>Réactiver les notifications</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="254"/>
<source>group_infos_meeting</source>
<extracomment>Schedule a meeting</extracomment>
<translation>Programmer une réunion</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="169"/>
<source>group_infos_participants</source>
<translation>Participants (%1)</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="158"/>
<source>group_infos_search</source>
<extracomment>&quot;Rechercher&quot;</extracomment>
<translation>Rechercher</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="206"/>
<source>group_infos_media_docs</source>
<extracomment>Medias &amp; documents</extracomment>
<translation>Medias &amp; documents</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="212"/>
<source>group_infos_shared_medias</source>
<extracomment>Shared medias</extracomment>
<translation>Médias partagés</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="223"/>
<source>group_infos_shared_docs</source>
<extracomment>Shared documents</extracomment>
<translation>Documents partagés</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="236"/>
<source>group_infos_other_actions</source>
<extracomment>Other actions</extracomment>
<translation>Autres actions</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="241"/>
<source>group_infos_enable_ephemerals</source>
<translation>Activer les messages éphémères</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="241"/>
<source>group_infos_ephemerals</source>
<translation>Messages éphémères : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="283"/>
<source>group_infos_delete_history</source>
<extracomment>Delete history</extracomment>
<translation>Supprimer l&apos;historique</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="288"/>
<source>group_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation>Supprimer l&apos;historique ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="290"/>
<source>group_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>Tous les messages seront supprimés. Souhaitez-vous continuer ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="263"/>
<source>group_infos_leave_room</source>
<extracomment>Leave chat room</extracomment>
<translation>Quitter la conversation</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="268"/>
<source>group_infos_leave_room_toast_title</source>
<extracomment>Leave Chat Room ?</extracomment>
<translation>Quitter la conversation ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="270"/>
<source>group_infos_leave_room_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>Vous ne recevrez ni pourrez envoyer des messages dans cette conversation, quitter ?</translation>
</message>
</context>
<context>
<name>GroupCreationFormLayout</name>
<message>
@ -4280,89 +4317,6 @@ Expiration : %1</translation>
<translation>Pas de token trouvé dans la configuration OpenID</translation>
</message>
</context>
<context>
<name>OneOneConversationInfos</name>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="74"/>
<source>one_one_infos_call</source>
<extracomment>&quot;Appel&quot;</extracomment>
<translation>Appel</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="88"/>
<source>one_one_infos_mute</source>
<translation>Sourdine</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="88"/>
<source>one_one_infos_unmute</source>
<extracomment>&quot;Sourdine&quot;</extracomment>
<translation>Réactiver les notifications</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="104"/>
<source>one_one_infos_search</source>
<extracomment>&quot;Rechercher&quot;</extracomment>
<translation>Rechercher</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="115"/>
<source>one_one_infos_media_docs</source>
<translation>Medias &amp; documents</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="120"/>
<source>one_one_infos_shared_media</source>
<translation>Médias partagés</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="130"/>
<source>one_one_infos_shared_docs</source>
<translation>Documents partagés</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="144"/>
<source>one_one_infos_other_actions</source>
<translation>Autres actions</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="163"/>
<source>one_one_infos_enable_ephemerals</source>
<translation>Activer les messages éphémères</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="163"/>
<source>one_one_infos_ephemerals</source>
<translation>Messages éphémères : </translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="173"/>
<source>one_one_infos_delete_history</source>
<translation>Supprimer l&apos;historique</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="178"/>
<source>one_one_infos_delete_history_toast_title</source>
<extracomment>Delete history ?</extracomment>
<translation>Supprimer l&apos;historique ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="180"/>
<source>one_one_infos_delete_history_toast_message</source>
<extracomment>All the messages will be removed from the chat room. Do you want to continue ?</extracomment>
<translation>Tous les messages seront supprimés. Souhaitez-vous continuer ?</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="149"/>
<source>one_one_infos_open_contact</source>
<translation>Voir le contact</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="149"/>
<source>one_one_infos_create_contact</source>
<translation>Créer un contact</translation>
</message>
</context>
<context>
<name>ParticipantListView</name>
<message>
@ -4874,13 +4828,13 @@ Pour les activer dans un projet commercial, merci de nous contacter.</translatio
<context>
<name>SecuritySettingsLayout</name>
<message>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="29"/>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="28"/>
<source>settings_security_enable_vfs_title</source>
<extracomment>&quot;Chiffrer tous les fichiers&quot;</extracomment>
<translation>Chiffrer tous les fichiers</translation>
</message>
<message>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="31"/>
<location filename="../../view/Page/Layout/Settings/SecuritySettingsLayout.qml" line="30"/>
<source>settings_security_enable_vfs_subtitle</source>
<extracomment>&quot;Attention, vous ne pourrez pas revenir en arrière !&quot;</extracomment>
<translation>Attention, vous ne pourrez pas revenir en arrière !</translation>
@ -4900,25 +4854,25 @@ Pour les activer dans un projet commercial, merci de nous contacter.</translatio
<translation>Réponse à %1</translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="585"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="600"/>
<source>shared_medias_title</source>
<extracomment>Shared medias</extracomment>
<translation>Médias partagés</translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="587"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="602"/>
<source>shared_documents_title</source>
<extracomment>Shared documents</extracomment>
<translation>Documents partagés</translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="616"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="631"/>
<source>forward_to_title</source>
<extracomment>Forward to</extracomment>
<translation>Transférer à</translation>
</message>
<message>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="650"/>
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="665"/>
<source>conversations_title</source>
<extracomment>Conversations</extracomment>
<translation>Conversations</translation>
@ -4964,36 +4918,42 @@ Pour les activer dans un projet commercial, merci de nous contacter.</translatio
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="27"/>
<source>settings_network_title</source>
<extracomment>&quot;Affichage&quot; &quot;Réseau&quot;</extracomment>
<translation>Réseau</translation>
<source>settings_security_title</source>
<extracomment>&quot;Affichage&quot; &quot;Security&quot;</extracomment>
<translation>Sécurité / Chiffrement</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="29"/>
<source>settings_network_title</source>
<extracomment>&quot;Réseau&quot;</extracomment>
<translation>Réseau</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="31"/>
<source>settings_advanced_title</source>
<extracomment>&quot;Paramètres avancés&quot;</extracomment>
<translation>Paramètres avancés</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="34"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="36"/>
<source>contact_editor_popup_abort_confirmation_title</source>
<extracomment>Modifications non enregistrées</extracomment>
<translation>Modifications non enregistrées</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="36"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="38"/>
<source>contact_editor_popup_abort_confirmation_message</source>
<extracomment>Vous avez des modifications non enregistrées. Si vous quittez cette page, vos changements seront perdus. Voulez-vous enregistrer vos modifications avant de continuer ?</extracomment>
<translation>Vous avez des modifications non enregistrées. Si vous quittez cette page, vos changements seront perdus. Voulez-vous enregistrer vos modifications avant de continuer ?</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="46"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="48"/>
<source>contact_editor_dialog_abort_confirmation_do_not_save</source>
<extracomment>&quot;Ne pas enregistrer&quot;</extracomment>
<translation>Ne pas enregistrer</translation>
</message>
<message>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="48"/>
<location filename="../../view/Page/Form/Settings/SettingsPage.qml" line="50"/>
<source>contact_editor_dialog_abort_confirmation_save</source>
<extracomment>&quot;Enregistrer&quot;</extracomment>
<translation>Enregistrer</translation>

View file

@ -155,12 +155,11 @@ list(APPEND _LINPHONEAPP_QML_FILES
view/Page/Layout/Settings/SecuritySettingsLayout.qml
view/Page/Layout/Settings/NetworkSettingsLayout.qml
view/Page/Layout/Settings/AdvancedSettingsLayout.qml
view/Page/Layout/Chat/GroupConversationInfos.qml
view/Page/Layout/Chat/MessageImdnStatusInfos.qml
view/Page/Layout/Chat/MessageInfosLayout.qml
view/Page/Layout/Chat/MessageReactionsInfos.qml
view/Page/Layout/Chat/MessageSharedFilesInfos.qml
view/Page/Layout/Chat/OneOneConversationInfos.qml
view/Page/Layout/Chat/ConversationInfos.qml
view/Page/Layout/Chat/ChatInfoActionsGroup.qml
view/Page/Layout/Chat/GroupChatInfoParticipants.qml
view/Page/Layout/Chat/ManageParticipants.qml

View file

@ -10,7 +10,6 @@ Control.TabBar {
readonly property int originX: count > 0
? itemAt(0).x
: 0
spacing: Math.round(40 * DefaultStyle.dp)
property real pixelSize: Typography.h3.pixelSize
property real textWeight: Typography.h3.weight
wheelEnabled: true

View file

@ -27,6 +27,7 @@ ColumnLayout {
TabBar {
Layout.fillWidth: true
id: bar
spacing: Math.round(40 * DefaultStyle.dp)
pixelSize: Math.round(16 * DefaultStyle.dp)
//: "Ecran entier"
model: [qsTr("screencast_settings_all_screen_label"),

View file

@ -513,9 +513,7 @@ RowLayout {
? forwardToListsComponent
: panelType === SelectedChatView.PanelType.ManageParticipants
? manageParticipantsComponent
: mainItem.chat?.core.isGroupChat
? groupInfoComponent
: oneToOneInfoComponent
: infoComponent
active: detailsPanel.visible
onLoaded: {
if (contentLoader.item && contentLoader.item.parentView) {
@ -525,33 +523,19 @@ RowLayout {
}
Component {
id: oneToOneInfoComponent
OneOneConversationInfos {
id: infoComponent
ConversationInfos {
chatGui: mainItem.chat
onEphemeralSettingsRequested: contentLoader.panelType = SelectedChatView.PanelType.EphemeralSettings
onShowSharedFilesRequested: (showMedias) => {
contentLoader.panelType = showMedias ? SelectedChatView.PanelType.SharedFiles : SelectedChatView.PanelType.Medias
}
onSearchInHistoryRequested: {
mainItem.showSearchBar = true
detailsPanel.visible = false
}
}
}
Component {
id: groupInfoComponent
GroupConversationInfos {
chatGui: mainItem.chat
onManageParticipantsRequested: contentLoader.panelType = SelectedChatView.PanelType.ManageParticipants
onEphemeralSettingsRequested: contentLoader.panelType = SelectedChatView.PanelType.EphemeralSettings
onShowSharedFilesRequested: (showMedias) => {
contentLoader.panelType = showMedias ? SelectedChatView.PanelType.SharedFiles : SelectedChatView.PanelType.Medias
}
onEphemeralSettingsRequested: contentLoader.panelType = SelectedChatView.PanelType.EphemeralSettings
onSearchInHistoryRequested: {
mainItem.showSearchBar = true
detailsPanel.visible = false
}
onManageParticipantsRequested: contentLoader.panelType = SelectedChatView.PanelType.ManageParticipants
}
}

View file

@ -98,6 +98,7 @@ LoginLayout {
TabBar {
Layout.fillWidth: true
id: bar
spacing: Math.round(40 * DefaultStyle.dp)
Layout.rightMargin: Math.round(Math.max(5 * DefaultStyle.dp,(127 - ((127/(DefaultStyle.defaultWidth - mainWindow.minimumWidth))*(DefaultStyle.defaultWidth-mainWindow.width))) * DefaultStyle.dp))
// "S'inscrire avec un numéro de téléphone"
model: [qsTr("assistant_account_register_with_phone_number"),

View file

@ -21,16 +21,18 @@ ColumnLayout {
Layout.topMargin: Math.round(5 * DefaultStyle.dp)
}
Rectangle {
Control.Control {
Layout.fillWidth: true
Layout.preferredHeight: implicitHeight
Layout.topMargin: Math.round(9 * DefaultStyle.dp)
background: Rectangle {
anchors.fill: parent
color: DefaultStyle.grey_100
radius: Math.round(15 * DefaultStyle.dp)
height: contentColumn.implicitHeight
}
ColumnLayout {
contentItem: ColumnLayout {
id: contentColumn
anchors.fill: parent
spacing: 0
Repeater {

View file

@ -0,0 +1,406 @@
import QtCore
import QtQuick
import QtQuick.Controls.Basic as Control
import QtQuick.Dialogs
import QtQuick.Effects
import QtQuick.Layouts
import Linphone
import UtilsCpp
import SettingsCpp
import 'qrc:/qt/qml/Linphone/view/Style/buttonStyle.js' as ButtonStyle
ColumnLayout {
id: mainItem
property ChatGui chatGui
property var chatCore: chatGui.core
property var contactObj: chatGui ? UtilsCpp.findFriendByAddress(mainItem.chatCore.peerAddress) : null
property var parentView
property bool isGroup: chatCore && chatCore.isGroupChat
spacing: 0
signal ephemeralSettingsRequested()
signal showSharedFilesRequested()
signal searchInHistoryRequested()
signal manageParticipantsRequested()
Avatar {
Layout.alignment: Qt.AlignHCenter
contact: contactObj?.value || null
displayNameVal: contact ? "" : mainItem.chatCore.avatarUri
Layout.preferredWidth: Math.round(100 * DefaultStyle.dp)
Layout.preferredHeight: Math.round(100 * DefaultStyle.dp)
PopupButton {
id: debugButton
z: parent.z + 1
icon.source: ""
anchors.right: parent.right
anchors.top: parent.top
hoverEnabled: false
MouseArea {
z: parent.z + 1
anchors.fill: parent
acceptedButtons: Qt.LeftButton | Qt.RightButton
onPressAndHold: (mouse) => {
if (mouse.button === Qt.RightButton) debugButton.popup.open()
}
}
popup.contentItem: RowLayout {
Text {
id: chatroomaddress
text: chatCore?.chatRoomAddress || ""
}
SmallButton {
icon.source: AppIcons.copy
onClicked: {
UtilsCpp.copyToClipboard(chatroomaddress.text)
debugButton.close()
}
style: ButtonStyle.noBackground
}
}
}
}
Component {
id: groupTitleContent
RowLayout {
id: titleMainItem
property bool isEditingSubject: false
property bool canEditSubject: mainItem.chatCore.meAdmin && mainItem.chatCore.isGroupChat
function saveSubject() {
mainItem.chatCore.lSetSubject(title.text)
}
Item {
visible: titleMainItem.canEditSubject
Layout.preferredWidth: Math.round(18 * DefaultStyle.dp)
}
Rectangle {
color: "transparent"
border.color: titleMainItem.isEditingSubject ? DefaultStyle.main1_500_main : "transparent"
border.width: 1
radius: Math.round(4 * DefaultStyle.dp)
Layout.preferredWidth: Math.round(150 * DefaultStyle.dp)
Layout.preferredHeight: title.contentHeight
anchors.margins: Math.round(2 * DefaultStyle.dp)
TextEdit {
id: title
anchors.fill: parent
anchors.margins: 6
font: Typography.p1
color: DefaultStyle.main2_700
text: mainItem.chatCore.title || ""
enabled: titleMainItem.isEditingSubject
wrapMode: TextEdit.Wrap
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
Keys.onReturnPressed: {
if (titleMainItem.isEditingSubject)
titleMainItem.saveSubject()
titleMainItem.isEditingSubject = !titleMainItem.isEditingSubject
}
}
}
Item {
visible: titleMainItem.canEditSubject
Layout.alignment: Qt.AlignVCenter
Layout.preferredWidth: Math.round(18 * DefaultStyle.dp)
Layout.preferredHeight: Math.round(18 * DefaultStyle.dp)
EffectImage {
anchors.fill: parent
fillMode: Image.PreserveAspectFit
imageSource: titleMainItem.isEditingSubject ? AppIcons.check : AppIcons.pencil
colorizationColor: titleMainItem.isEditingSubject ? DefaultStyle.main1_500_main : DefaultStyle.main2_500main
}
MouseArea {
id: editMouseArea
anchors.fill: parent
hoverEnabled: true
onClicked: {
if (titleMainItem.isEditingSubject)
titleMainItem.saveSubject()
titleMainItem.isEditingSubject = !titleMainItem.isEditingSubject
}
cursorShape: Qt.PointingHandCursor
}
}
}
}
Component {
id: oneOneTitleContent
Text {
font: Typography.p1
color: DefaultStyle.main2_700
text: mainItem.chatCore.title || ""
}
}
Loader {
id: titleLayout
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(11 * DefaultStyle.dp)
sourceComponent: mainItem.isGroup ? groupTitleContent : oneOneTitleContent
}
Text {
font: Typography.p3
color: DefaultStyle.main2_700
text: mainItem.chatCore.peerAddress
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(5 * DefaultStyle.dp)
}
Text {
visible: contactObj && contactObj.value || false
font: Typography.p3
color: contactObj?.value != null ? contactObj?.value.core.presenceColor : "transparent"
text: contactObj?.value != null ? contactObj?.value.core.presenceStatus : ""
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(5 * DefaultStyle.dp)
}
RowLayout {
spacing: Math.round(10 * DefaultStyle.dp)
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(30 * DefaultStyle.dp)
Layout.preferredHeight: Math.round(110 * DefaultStyle.dp)
Layout.minimumHeight: Math.round(110 * DefaultStyle.dp)
LabelButton {
text.Layout.fillWidth: true
text.horizontalAlignment: Text.AlignHCenter
text.wrapMode: Text.Wrap
Layout.alignment: Qt.AlignTop
Layout.preferredWidth: Math.round(130 * DefaultStyle.dp)
Layout.maximumWidth: Math.round(130 * DefaultStyle.dp)
button.icon.width: Math.round(24 * DefaultStyle.dp)
button.icon.height: Math.round(24 * DefaultStyle.dp)
button.icon.source: AppIcons.phone
//: "Appel"
label: qsTr("one_one_infos_call")
button.onClicked: mainItem.isGroup ? parentView.groupCall() : parentView.oneOneCall(false)
}
LabelButton {
text.Layout.fillWidth: true
text.horizontalAlignment: Text.AlignHCenter
text.wrapMode: Text.Wrap
Layout.alignment: Qt.AlignTop
Layout.preferredWidth: Math.round(130 * DefaultStyle.dp)
Layout.maximumWidth: Math.round(130 * DefaultStyle.dp)
button.icon.width: Math.round(24 * DefaultStyle.dp)
button.icon.height: Math.round(24 * DefaultStyle.dp)
button.icon.source: mainItem.chatCore.muted ? AppIcons.bell : AppIcons.bellSlash
//: "Sourdine"
label: mainItem.chatCore.muted ? qsTr("one_one_infos_unmute") : qsTr("one_one_infos_mute")
button.onClicked: {
mainItem.chatCore.muted = !mainItem.chatCore.muted
}
}
LabelButton {
text.Layout.fillWidth: true
text.horizontalAlignment: Text.AlignHCenter
text.wrapMode: Text.Wrap
Layout.alignment: Qt.AlignTop
Layout.preferredWidth: Math.round(130 * DefaultStyle.dp)
Layout.maximumWidth: Math.round(130 * DefaultStyle.dp)
button.icon.width: Math.round(24 * DefaultStyle.dp)
button.icon.height: Math.round(24 * DefaultStyle.dp)
button.icon.source: AppIcons.search
//: "Rechercher"
label: qsTr("one_one_infos_search")
button.onClicked: {
mainItem.searchInHistoryRequested()
}
}
}
Control.ScrollView {
id: scrollView
Layout.fillHeight: true
Layout.fillWidth: true
Layout.topMargin: Math.round(30 * DefaultStyle.dp)
clip: true
Layout.leftMargin: Math.round(15 * DefaultStyle.dp)
Layout.rightMargin: Math.round(15 * DefaultStyle.dp)
ColumnLayout {
spacing: 0
width: scrollView.width
Loader {
id: participantLoader
Layout.fillWidth: true
active: mainItem.isGroup
sourceComponent: GroupChatInfoParticipants {
Layout.fillWidth: true
title: qsTr("group_infos_participants").arg(mainItem.chatCore.participants.length)
participants: mainItem.chatCore.participants
chatCore: mainItem.chatCore
onManageParticipantsRequested: mainItem.manageParticipantsRequested()
}
Connections {
target: mainItem.chatCore
onParticipantsChanged : { // hacky reload to update intric height
participantLoader.active = false
participantLoader.active = true
}
}
}
ChatInfoActionsGroup {
Layout.topMargin: Math.round(30 * DefaultStyle.dp)
//: Medias & documents
title: qsTr("group_infos_media_docs")
entries: [
{
icon: AppIcons.photo,
visible: true,
//: Shared medias
text: qsTr("group_infos_shared_medias"),
color: DefaultStyle.main2_600,
showRightArrow: true,
action: function() {
mainItem.showSharedFilesRequested(true)
}
},
{
icon: AppIcons.pdf,
visible: true,
//: Shared documents
text: qsTr("group_infos_shared_docs"),
color: DefaultStyle.main2_600,
showRightArrow: true,
action: function() {
mainItem.showSharedFilesRequested(false)
}
}
]
}
ChatInfoActionsGroup {
Layout.topMargin: Math.round(17 * DefaultStyle.dp)
//: Other actions
title: qsTr("group_infos_other_actions")
entries: mainItem.isGroup
? [
{
icon: AppIcons.clockCountDown,
visible: !mainItem.chatCore.isReadOnly,
text: mainItem.chatCore.ephemeralEnabled ? qsTr("group_infos_ephemerals")+UtilsCpp.getEphemeralFormatedTime(mainItem.chatCore.ephemeralLifetime) : qsTr("group_infos_enable_ephemerals"),
color: DefaultStyle.main2_600,
showRightArrow: false,
action: function() {
mainItem.ephemeralSettingsRequested()
}
},
{
visible: !SettingsCpp.disableMeetingsFeature,
icon: AppIcons.videoconference,
color: DefaultStyle.main2_600,
showRightArrow: false,
//: Schedule a meeting
text: qsTr("group_infos_meeting"),
action: function() {
UtilsCpp.getMainWindow().scheduleMeeting(mainItem.chatCore.title, mainItem.chatCore.participantsAddresses)
}
},
{
icon: AppIcons.signOut,
visible: !mainItem.chatCore.isReadOnly,
//: Leave chat room
text: qsTr("group_infos_leave_room"),
color: DefaultStyle.main2_600,
showRightArrow: false,
action: function() {
//: Leave Chat Room ?
mainWindow.showConfirmationLambdaPopup(qsTr("group_infos_leave_room_toast_title"),
//: All the messages will be removed from the chat room. Do you want to continue ?
qsTr("group_infos_leave_room_toast_message"),
"",
function(confirmed) {
if (confirmed) {
mainItem.chatCore.lLeave()
}
})
}
},
{
icon: AppIcons.trashCan,
visible: true,
//: Delete history
text: qsTr("group_infos_delete_history"),
color: DefaultStyle.danger_500main,
showRightArrow: false,
action: function() {
//: Delete history ?
mainWindow.showConfirmationLambdaPopup(qsTr("group_infos_delete_history_toast_title"),
//: All the messages will be removed from the chat room. Do you want to continue ?
qsTr("group_infos_delete_history_toast_message"),
"",
function(confirmed) {
if (confirmed) {
mainItem.chatCore.lDeleteHistory()
}
})
}
}
]
: [
{
icon: contactObj.value ? AppIcons.adressBook : AppIcons.plusCircle,
visible: true,
text: contactObj.value ? qsTr("one_one_infos_open_contact") : qsTr("one_one_infos_create_contact"),
color: DefaultStyle.main2_600,
showRightArrow: false,
action: function() {
// contactObj.value = friendGui
if (contactObj.value)
mainWindow.displayContactPage(contactObj.value.core.defaultAddress)
else
mainWindow.displayCreateContactPage("",mainItem.chatCore.peerAddress)
}
},
{
icon: AppIcons.clockCountDown,
visible: !mainItem.chatCore.isReadOnly,
text: mainItem.chatCore.ephemeralEnabled ? qsTr("one_one_infos_ephemerals")+UtilsCpp.getEphemeralFormatedTime(mainItem.chatCore.ephemeralLifetime) : qsTr("one_one_infos_enable_ephemerals"),
color: DefaultStyle.main2_600,
showRightArrow: false,
action: function() {
mainItem.ephemeralSettingsRequested()
}
},
{
icon: AppIcons.trashCan,
visible: true,
text: qsTr("one_one_infos_delete_history"),
color: DefaultStyle.danger_500main,
showRightArrow: false,
action: function() {
//: Delete history ?
mainWindow.showConfirmationLambdaPopup(qsTr("one_one_infos_delete_history_toast_title"),
//: All the messages will be removed from the chat room. Do you want to continue ?
qsTr("one_one_infos_delete_history_toast_message"),
"",
function(confirmed) {
if (confirmed) {
mainItem.chatCore.lDeleteHistory()
}
})
}
}
]
}
}
}
Item {
Layout.fillHeight: true
Layout.preferredHeight: Math.round(50 * DefaultStyle.dp)
}
}

View file

@ -1,306 +0,0 @@
import QtCore
import QtQuick
import QtQuick.Controls 2.15
import QtQuick.Dialogs
import QtQuick.Effects
import QtQuick.Layouts
import Linphone
import UtilsCpp
import SettingsCpp
import 'qrc:/qt/qml/Linphone/view/Style/buttonStyle.js' as ButtonStyle
ColumnLayout {
id: mainItem
property ChatGui chatGui
property var chatCore: chatGui.core
property var parentView
property bool manageParticipants: false
signal manageParticipantsRequested()
signal ephemeralSettingsRequested()
signal showSharedFilesRequested(bool showMedias)
signal searchInHistoryRequested()
spacing: 0
Avatar {
Layout.alignment: Qt.AlignHCenter
displayNameVal: mainItem.chatCore.avatarUri
Layout.preferredWidth: Math.round(100 * DefaultStyle.dp)
Layout.preferredHeight: Math.round(100 * DefaultStyle.dp)
}
RowLayout {
id: titleMainItem
property bool isEditingSubject: false
property bool canEditSubject: mainItem.chatCore.meAdmin && mainItem.chatCore.isGroupChat
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(11 * DefaultStyle.dp)
function saveSubject() {
mainItem.chatCore.lSetSubject(title.text)
}
Item {
visible: titleMainItem.canEditSubject
Layout.preferredWidth: Math.round(18 * DefaultStyle.dp)
}
Rectangle {
color: "transparent"
border.color: titleMainItem.isEditingSubject ? DefaultStyle.main1_500_main : "transparent"
border.width: 1
radius: Math.round(4 * DefaultStyle.dp)
Layout.preferredWidth: Math.round(150 * DefaultStyle.dp)
Layout.preferredHeight: title.contentHeight
anchors.margins: Math.round(2 * DefaultStyle.dp)
TextEdit {
id: title
anchors.fill: parent
anchors.margins: 6
font: Typography.p1
color: DefaultStyle.main2_700
text: mainItem.chatCore.title || ""
enabled: titleMainItem.isEditingSubject
wrapMode: TextEdit.Wrap
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
Keys.onReturnPressed: {
if (titleMainItem.isEditingSubject)
titleMainItem.saveSubject()
titleMainItem.isEditingSubject = !titleMainItem.isEditingSubject
}
}
}
Item {
visible: titleMainItem.canEditSubject
Layout.alignment: Qt.AlignVCenter
Layout.preferredWidth: Math.round(18 * DefaultStyle.dp)
Layout.preferredHeight: Math.round(18 * DefaultStyle.dp)
EffectImage {
anchors.fill: parent
fillMode: Image.PreserveAspectFit
imageSource: titleMainItem.isEditingSubject ? AppIcons.check : AppIcons.pencil
colorizationColor: titleMainItem.isEditingSubject ? DefaultStyle.main1_500_main : DefaultStyle.main2_500main
}
MouseArea {
id: editMouseArea
anchors.fill: parent
hoverEnabled: true
onClicked: {
if (titleMainItem.isEditingSubject)
titleMainItem.saveSubject()
titleMainItem.isEditingSubject = !titleMainItem.isEditingSubject
}
cursorShape: Qt.PointingHandCursor
}
}
}
Text {
font: Typography.p3
color: DefaultStyle.main2_700
text: mainItem.chatCore.peerAddress
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(5 * DefaultStyle.dp)
}
RowLayout {
spacing: Math.round(10 * DefaultStyle.dp)
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(30 * DefaultStyle.dp)
Layout.preferredHeight: Math.round(100 * DefaultStyle.dp)
Layout.minimumHeight: Math.round(100 * DefaultStyle.dp)
LabelButton {
text.Layout.fillWidth: true
text.horizontalAlignment: Text.AlignHCenter
text.wrapMode: Text.Wrap
Layout.alignment: Qt.AlignTop
Layout.preferredWidth: Math.round(130 * DefaultStyle.dp)
Layout.maximumWidth: Math.round(130 * DefaultStyle.dp)
button.icon.width: Math.round(24 * DefaultStyle.dp)
button.icon.height: Math.round(24 * DefaultStyle.dp)
button.icon.source: chatCore.muted ? AppIcons.bell : AppIcons.bellSlash
//: "Sourdine"
label: chatCore.muted ? qsTr("group_infos_unmute") : qsTr("group_infos_mute")
button.onClicked: chatCore.muted = !chatCore.muted
}
LabelButton {
visible: !SettingsCpp.disableMeetingsFeature
text.Layout.fillWidth: true
text.horizontalAlignment: Text.AlignHCenter
text.wrapMode: Text.Wrap
Layout.alignment: Qt.AlignTop
Layout.preferredWidth: Math.round(130 * DefaultStyle.dp)
Layout.maximumWidth: Math.round(130 * DefaultStyle.dp)
button.icon.width: Math.round(24 * DefaultStyle.dp)
button.icon.height: Math.round(24 * DefaultStyle.dp)
button.icon.source: AppIcons.phone
//: "Appel"
label: qsTr("group_infos_call")
button.onClicked: parentView.groupCall()
}
LabelButton {
text.Layout.fillWidth: true
text.horizontalAlignment: Text.AlignHCenter
text.wrapMode: Text.Wrap
Layout.alignment: Qt.AlignTop
Layout.preferredWidth: Math.round(130 * DefaultStyle.dp)
Layout.maximumWidth: Math.round(130 * DefaultStyle.dp)
button.icon.width: Math.round(24 * DefaultStyle.dp)
button.icon.height: Math.round(24 * DefaultStyle.dp)
button.icon.source: AppIcons.search
//: "Rechercher"
label: qsTr("group_infos_search")
button.onClicked: {
mainItem.searchInHistoryRequested()
}
}
}
Component {
id: participantList
GroupChatInfoParticipants {
Layout.fillWidth: true
title: qsTr("group_infos_participants").arg(mainItem.chatCore.participants.length)
participants: mainItem.chatCore.participants
chatCore: mainItem.chatCore
onManageParticipantsRequested: mainItem.manageParticipantsRequested()
}
}
ScrollView {
id: scrollView
Layout.fillHeight: true
Layout.fillWidth: true
Layout.topMargin: Math.round(30 * DefaultStyle.dp)
clip: true
Layout.leftMargin: Math.round(15 * DefaultStyle.dp)
Layout.rightMargin: Math.round(15 * DefaultStyle.dp)
ColumnLayout {
spacing: 0
width: scrollView.width
Loader {
id: participantLoader
Layout.fillWidth: true
sourceComponent: participantList
Connections {
target: mainItem.chatCore
onParticipantsChanged : { // hacky reload to update intric height
participantLoader.active = false
participantLoader.active = true
}
}
}
ChatInfoActionsGroup {
Layout.topMargin: Math.round(30 * DefaultStyle.dp)
//: Medias & documents
title: qsTr("group_infos_media_docs")
entries: [
{
icon: AppIcons.photo,
visible: true,
//: Shared medias
text: qsTr("group_infos_shared_medias"),
color: DefaultStyle.main2_600,
showRightArrow: true,
action: function() {
mainItem.showSharedFilesRequested(true)
}
},
{
icon: AppIcons.pdf,
visible: true,
//: Shared documents
text: qsTr("group_infos_shared_docs"),
color: DefaultStyle.main2_600,
showRightArrow: true,
action: function() {
mainItem.showSharedFilesRequested(false)
}
}
]
}
ChatInfoActionsGroup {
Layout.topMargin: Math.round(17 * DefaultStyle.dp)
//: Other actions
title: qsTr("group_infos_other_actions")
entries: [
{
icon: AppIcons.clockCountDown,
visible: !mainItem.chatCore.isReadOnly,
text: mainItem.chatCore.ephemeralEnabled ? qsTr("group_infos_ephemerals")+UtilsCpp.getEphemeralFormatedTime(mainItem.chatCore.ephemeralLifetime) : qsTr("group_infos_enable_ephemerals"),
color: DefaultStyle.main2_600,
showRightArrow: false,
action: function() {
mainItem.ephemeralSettingsRequested()
}
},
{
visible: !SettingsCpp.disableMeetingsFeature,
icon: AppIcons.videoconference,
color: DefaultStyle.main2_600,
showRightArrow: false,
//: Schedule a meeting
text: qsTr("group_infos_meeting"),
action: function() {
UtilsCpp.getMainWindow().scheduleMeeting(mainItem.chatCore.title, mainItem.chatCore.participantsAddresses)
}
},
{
icon: AppIcons.signOut,
visible: !mainItem.chatCore.isReadOnly,
//: Leave chat room
text: qsTr("group_infos_leave_room"),
color: DefaultStyle.main2_600,
showRightArrow: false,
action: function() {
//: Leave Chat Room ?
mainWindow.showConfirmationLambdaPopup(qsTr("group_infos_leave_room_toast_title"),
//: All the messages will be removed from the chat room. Do you want to continue ?
qsTr("group_infos_leave_room_toast_message"),
"",
function(confirmed) {
if (confirmed) {
mainItem.chatCore.lLeave()
}
})
}
},
{
icon: AppIcons.trashCan,
visible: true,
//: Delete history
text: qsTr("group_infos_delete_history"),
color: DefaultStyle.danger_500main,
showRightArrow: false,
action: function() {
//: Delete history ?
mainWindow.showConfirmationLambdaPopup(qsTr("group_infos_delete_history_toast_title"),
//: All the messages will be removed from the chat room. Do you want to continue ?
qsTr("group_infos_delete_history_toast_message"),
"",
function(confirmed) {
if (confirmed) {
mainItem.chatCore.lDeleteHistory()
}
})
}
}
]
}
}
}
Item {
Layout.preferredHeight: Math.round(50 * DefaultStyle.dp)
}
}

View file

@ -43,16 +43,19 @@ ColumnLayout {
ColumnLayout {
id: contentLayout
spacing: Math.round(21 * DefaultStyle.dp)
Layout.leftMargin: Math.round(16 * DefaultStyle.dp)
Layout.rightMargin: Math.round(16 * DefaultStyle.dp)
spacing: Math.round(21 * DefaultStyle.dp)
TabBar {
id: tabbar
onCurrentIndexChanged: console.log("current index", currentIndex)
visible: mainItem.tabbarModel !== undefined
Layout.fillWidth: true
Layout.preferredWidth: parent.width
model: mainItem.tabbarModel
pixelSize: Typography.h3m.pixelSize
textWeight: Typography.h3m.weight
spacing: Math.round(10 * DefaultStyle.dp)
}
ListView {

View file

@ -1,195 +0,0 @@
import QtCore
import QtQuick
import QtQuick.Controls.Basic as Control
import QtQuick.Dialogs
import QtQuick.Effects
import QtQuick.Layouts
import Linphone
import UtilsCpp
import SettingsCpp
import 'qrc:/qt/qml/Linphone/view/Style/buttonStyle.js' as ButtonStyle
ColumnLayout {
id: mainItem
property ChatGui chatGui
property var chatCore: chatGui.core
property var contactObj: chatGui ? UtilsCpp.findFriendByAddress(mainItem.chatCore.peerAddress) : null
property var parentView
spacing: 0
signal ephemeralSettingsRequested()
signal showSharedFilesRequested()
signal searchInHistoryRequested()
Avatar {
Layout.alignment: Qt.AlignHCenter
contact: contactObj?.value || null
displayNameVal: contact ? "" : mainItem.chatCore.avatarUri
Layout.preferredWidth: Math.round(100 * DefaultStyle.dp)
Layout.preferredHeight: Math.round(100 * DefaultStyle.dp)
}
Text {
font: Typography.p1
color: DefaultStyle.main2_700
text: mainItem.chatCore.title || ""
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(11 * DefaultStyle.dp)
}
Text {
font: Typography.p3
color: DefaultStyle.main2_700
text: mainItem.chatCore.peerAddress
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(5 * DefaultStyle.dp)
}
Text {
visible: contactObj && contactObj.value || false
font: Typography.p3
color: contactObj?.value != null ? contactObj?.value.core.presenceColor : "transparent"
text: contactObj?.value != null ? contactObj?.value.core.presenceStatus : ""
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(5 * DefaultStyle.dp)
}
RowLayout {
spacing: Math.round(10 * DefaultStyle.dp)
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: Math.round(30 * DefaultStyle.dp)
Layout.preferredHeight: Math.round(110 * DefaultStyle.dp)
Layout.minimumHeight: Math.round(110 * DefaultStyle.dp)
LabelButton {
text.Layout.fillWidth: true
text.horizontalAlignment: Text.AlignHCenter
text.wrapMode: Text.Wrap
Layout.alignment: Qt.AlignTop
Layout.preferredWidth: Math.round(130 * DefaultStyle.dp)
Layout.maximumWidth: Math.round(130 * DefaultStyle.dp)
button.icon.width: Math.round(24 * DefaultStyle.dp)
button.icon.height: Math.round(24 * DefaultStyle.dp)
button.icon.source: AppIcons.phone
//: "Appel"
label: qsTr("one_one_infos_call")
button.onClicked: parentView.oneOneCall(false)
}
LabelButton {
text.Layout.fillWidth: true
text.horizontalAlignment: Text.AlignHCenter
text.wrapMode: Text.Wrap
Layout.alignment: Qt.AlignTop
Layout.preferredWidth: Math.round(130 * DefaultStyle.dp)
Layout.maximumWidth: Math.round(130 * DefaultStyle.dp)
button.icon.width: Math.round(24 * DefaultStyle.dp)
button.icon.height: Math.round(24 * DefaultStyle.dp)
button.icon.source: mainItem.chatCore.muted ? AppIcons.bell : AppIcons.bellSlash
//: "Sourdine"
label: mainItem.chatCore.muted ? qsTr("one_one_infos_unmute") : qsTr("one_one_infos_mute")
button.onClicked: {
mainItem.chatCore.muted = !mainItem.chatCore.muted
}
}
LabelButton {
text.Layout.fillWidth: true
text.horizontalAlignment: Text.AlignHCenter
text.wrapMode: Text.Wrap
Layout.alignment: Qt.AlignTop
Layout.preferredWidth: Math.round(130 * DefaultStyle.dp)
Layout.maximumWidth: Math.round(130 * DefaultStyle.dp)
button.icon.width: Math.round(24 * DefaultStyle.dp)
button.icon.height: Math.round(24 * DefaultStyle.dp)
button.icon.source: AppIcons.search
//: "Rechercher"
label: qsTr("one_one_infos_search")
button.onClicked: {
mainItem.searchInHistoryRequested()
}
}
}
ChatInfoActionsGroup {
Layout.leftMargin: Math.round(15 * DefaultStyle.dp)
Layout.rightMargin: Math.round(12 * DefaultStyle.dp)
Layout.topMargin: Math.round(30 * DefaultStyle.dp)
title: qsTr("one_one_infos_media_docs")
entries: [
{
icon: AppIcons.photo,
visible: true,
text: qsTr("one_one_infos_shared_media"),
color: DefaultStyle.main2_600,
showRightArrow: true,
action: function() {
mainItem.showSharedFilesRequested(true)
}
},
{
icon: AppIcons.pdf,
visible: true,
text: qsTr("one_one_infos_shared_docs"),
color: DefaultStyle.main2_600,
showRightArrow: true,
action: function() {
mainItem.showSharedFilesRequested(false)
}
}
]
}
ChatInfoActionsGroup {
Layout.leftMargin: Math.round(15 * DefaultStyle.dp)
Layout.rightMargin: Math.round(12 * DefaultStyle.dp)
Layout.topMargin: Math.round(17 * DefaultStyle.dp)
title: qsTr("one_one_infos_other_actions")
entries: [
{
icon: contactObj.value ? AppIcons.adressBook : AppIcons.plusCircle,
visible: true,
text: contactObj.value ? qsTr("one_one_infos_open_contact") : qsTr("one_one_infos_create_contact"),
color: DefaultStyle.main2_600,
showRightArrow: false,
action: function() {
// contactObj.value = friendGui
if (contactObj.value)
mainWindow.displayContactPage(contactObj.value.core.defaultAddress)
else
mainWindow.displayCreateContactPage("",mainItem.chatCore.peerAddress)
}
},
{
icon: AppIcons.clockCountDown,
visible: !mainItem.chatCore.isReadOnly,
text: mainItem.chatCore.ephemeralEnabled ? qsTr("one_one_infos_ephemerals")+UtilsCpp.getEphemeralFormatedTime(mainItem.chatCore.ephemeralLifetime) : qsTr("one_one_infos_enable_ephemerals"),
color: DefaultStyle.main2_600,
showRightArrow: false,
action: function() {
mainItem.ephemeralSettingsRequested()
}
},
{
icon: AppIcons.trashCan,
visible: true,
text: qsTr("one_one_infos_delete_history"),
color: DefaultStyle.danger_500main,
showRightArrow: false,
action: function() {
//: Delete history ?
mainWindow.showConfirmationLambdaPopup(qsTr("one_one_infos_delete_history_toast_title"),
//: All the messages will be removed from the chat room. Do you want to continue ?
qsTr("one_one_infos_delete_history_toast_message"),
"",
function(confirmed) {
if (confirmed) {
mainItem.chatCore.lDeleteHistory()
}
})
}
}
]
}
Item {
Layout.fillHeight: true
}
}

@ -1 +1 @@
Subproject commit 4962e9b64f5baaa710ce997daa38ebe6502fed2b
Subproject commit 7de88db26dcc9e9b165811e5efc5ca9d2108112b