mirror of
https://gitlab.linphone.org/BC/public/linphone-desktop.git
synced 2026-01-17 03:18:07 +00:00
show shared medias/files + expand button on chat participant list
This commit is contained in:
parent
c015375ae9
commit
a5851855d9
27 changed files with 816 additions and 316 deletions
|
|
@ -54,6 +54,7 @@
|
|||
#include "core/call/CallProxy.hpp"
|
||||
#include "core/camera/CameraGui.hpp"
|
||||
#include "core/chat/ChatProxy.hpp"
|
||||
#include "core/chat/files/ChatMessageFileProxy.hpp"
|
||||
#include "core/chat/message/ChatMessageGui.hpp"
|
||||
#include "core/chat/message/EventLogGui.hpp"
|
||||
#include "core/chat/message/EventLogList.hpp"
|
||||
|
|
@ -678,6 +679,7 @@ void App::initCppInterfaces() {
|
|||
qmlRegisterType<EventLogList>(Constants::MainQmlUri, 1, 0, "EventLogList");
|
||||
qmlRegisterType<EventLogProxy>(Constants::MainQmlUri, 1, 0, "EventLogProxy");
|
||||
qmlRegisterType<ChatMessageContentProxy>(Constants::MainQmlUri, 1, 0, "ChatMessageContentProxy");
|
||||
qmlRegisterType<ChatMessageFileProxy>(Constants::MainQmlUri, 1, 0, "ChatMessageFileProxy");
|
||||
qmlRegisterType<ChatMessageContentGui>(Constants::MainQmlUri, 1, 0, "ChatMessageContentGui");
|
||||
qmlRegisterUncreatableType<ConferenceCore>(Constants::MainQmlUri, 1, 0, "ConferenceCore",
|
||||
QLatin1String("Uncreatable"));
|
||||
|
|
|
|||
|
|
@ -33,6 +33,8 @@ list(APPEND _LINPHONEAPP_SOURCES
|
|||
core/chat/message/content/ChatMessageContentGui.cpp
|
||||
core/chat/message/content/ChatMessageContentList.cpp
|
||||
core/chat/message/content/ChatMessageContentProxy.cpp
|
||||
core/chat/files/ChatMessageFileList.cpp
|
||||
core/chat/files/ChatMessageFileProxy.cpp
|
||||
core/chat/message/imdn/ImdnStatusList.cpp
|
||||
core/chat/message/imdn/ImdnStatusProxy.cpp
|
||||
core/emoji/EmojiList.cpp
|
||||
|
|
|
|||
|
|
@ -92,6 +92,13 @@ ChatCore::ChatCore(const std::shared_ptr<linphone::ChatRoom> &chatRoom) : QObjec
|
|||
for (auto &event : lHistory) {
|
||||
auto eventLogCore = EventLogCore::create(event);
|
||||
eventList.append(eventLogCore);
|
||||
if (auto isMessage = eventLogCore->getChatMessageCore()) {
|
||||
for (auto content : isMessage->getChatMessageContentList()) {
|
||||
if (content->isFile() && !content->isVoiceRecording()) {
|
||||
mFileList.append(content);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
resetEventLogList(eventList);
|
||||
mIdentifier = Utils::coreStringToAppString(chatRoom->getIdentifier());
|
||||
|
|
@ -105,6 +112,22 @@ ChatCore::ChatCore(const std::shared_ptr<linphone::ChatRoom> &chatRoom) : QObjec
|
|||
connect(this, &ChatCore::eventListChanged, this, &ChatCore::lUpdateLastMessage);
|
||||
connect(this, &ChatCore::eventsInserted, this, &ChatCore::lUpdateLastMessage);
|
||||
connect(this, &ChatCore::eventRemoved, this, &ChatCore::lUpdateLastMessage);
|
||||
auto resetFileListLambda = [this] {
|
||||
QList<QSharedPointer<ChatMessageContentCore>> fileList;
|
||||
for (auto &eventLogCore : mEventLogList) {
|
||||
if (auto isMessage = eventLogCore->getChatMessageCore()) {
|
||||
for (auto content : isMessage->getChatMessageContentList()) {
|
||||
if (content->isFile() && !content->isVoiceRecording()) {
|
||||
fileList.append(content);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
resetFileList(fileList);
|
||||
};
|
||||
connect(this, &ChatCore::eventListChanged, this, resetFileListLambda);
|
||||
connect(this, &ChatCore::eventsInserted, this, resetFileListLambda);
|
||||
connect(this, &ChatCore::eventRemoved, this, resetFileListLambda);
|
||||
mEphemeralEnabled = chatRoom->ephemeralEnabled();
|
||||
mEphemeralLifetime = chatRoom->ephemeralEnabled() ? chatRoom->getEphemeralLifetime() : 0;
|
||||
mIsMuted = chatRoom->getMuted();
|
||||
|
|
@ -114,6 +137,7 @@ ChatCore::ChatCore(const std::shared_ptr<linphone::ChatRoom> &chatRoom) : QObjec
|
|||
ChatCore::~ChatCore() {
|
||||
lDebug() << "[ChatCore] delete" << this;
|
||||
mustBeInMainThread("~" + getClassName());
|
||||
mChatModelConnection->disconnect();
|
||||
emit mChatModel->removeListener();
|
||||
}
|
||||
|
||||
|
|
@ -555,6 +579,15 @@ QString ChatCore::getComposingAddress() const {
|
|||
return mComposingAddress;
|
||||
}
|
||||
|
||||
QList<QSharedPointer<ChatMessageContentCore>> ChatCore::getFileList() const {
|
||||
return mFileList;
|
||||
}
|
||||
|
||||
void ChatCore::resetFileList(QList<QSharedPointer<ChatMessageContentCore>> list) {
|
||||
mFileList = list;
|
||||
emit fileListChanged();
|
||||
}
|
||||
|
||||
std::shared_ptr<ChatModel> ChatCore::getModel() const {
|
||||
return mChatModel;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -64,6 +64,7 @@ public:
|
|||
Q_PROPERTY(QVariantList participants READ getParticipantsGui NOTIFY participantsChanged)
|
||||
Q_PROPERTY(QStringList participantsAddresses READ getParticipantsAddresses WRITE lSetParticipantsAddresses NOTIFY
|
||||
participantsChanged)
|
||||
Q_PROPERTY(QList<QSharedPointer<ChatMessageContentCore>> fileList READ getFileList NOTIFY fileListChanged)
|
||||
|
||||
// Should be call from model Thread. Will be automatically in App thread after initialization
|
||||
static QSharedPointer<ChatCore> create(const std::shared_ptr<linphone::ChatRoom> &chatRoom);
|
||||
|
|
@ -94,6 +95,9 @@ public:
|
|||
ChatMessageGui *getLastMessage() const;
|
||||
QString getLastMessageText() const;
|
||||
|
||||
QList<QSharedPointer<ChatMessageContentCore>> getFileList() const;
|
||||
void resetFileList(QList<QSharedPointer<ChatMessageContentCore>> list);
|
||||
|
||||
LinphoneEnums::ChatMessageState getLastMessageState() const;
|
||||
|
||||
LinphoneEnums::ChatRoomState getChatRoomState() const;
|
||||
|
|
@ -157,6 +161,7 @@ signals:
|
|||
void ephemeralLifetimeChanged();
|
||||
void meAdminChanged();
|
||||
void participantsChanged();
|
||||
void fileListChanged();
|
||||
|
||||
void lDeleteMessage(ChatMessageGui *message);
|
||||
void lDelete();
|
||||
|
|
@ -195,6 +200,7 @@ private:
|
|||
bool mIsReadOnly = false;
|
||||
bool mEphemeralEnabled = false;
|
||||
int mEphemeralLifetime = 0;
|
||||
QList<QSharedPointer<ChatMessageContentCore>> mFileList;
|
||||
bool mIsMuted = false;
|
||||
bool mMeAdmin = false;
|
||||
QList<QSharedPointer<ParticipantCore>> mParticipants;
|
||||
|
|
|
|||
73
Linphone/core/chat/files/ChatMessageFileList.cpp
Normal file
73
Linphone/core/chat/files/ChatMessageFileList.cpp
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
/*
|
||||
* Copyright (c) 2010-2024 Belledonne Communications SARL.
|
||||
*
|
||||
* This file is part of linphone-desktop
|
||||
* (see https://www.linphone.org).
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "ChatMessageFileList.hpp"
|
||||
#include "core/App.hpp"
|
||||
#include "core/chat/message/content/ChatMessageContentCore.hpp"
|
||||
|
||||
#include <QSharedPointer>
|
||||
|
||||
#include <linphone++/linphone.hh>
|
||||
|
||||
// =============================================================================
|
||||
|
||||
DEFINE_ABSTRACT_OBJECT(ChatMessageFileList)
|
||||
|
||||
QSharedPointer<ChatMessageFileList> ChatMessageFileList::create() {
|
||||
auto model = QSharedPointer<ChatMessageFileList>(new ChatMessageFileList(), &QObject::deleteLater);
|
||||
model->moveToThread(App::getInstance()->thread());
|
||||
return model;
|
||||
}
|
||||
|
||||
ChatMessageFileList::ChatMessageFileList(QObject *parent) : ListProxy(parent) {
|
||||
mustBeInMainThread(getClassName());
|
||||
App::getInstance()->mEngine->setObjectOwnership(this, QQmlEngine::CppOwnership);
|
||||
}
|
||||
|
||||
ChatMessageFileList::~ChatMessageFileList() {
|
||||
mustBeInMainThread("~" + getClassName());
|
||||
mList.clear();
|
||||
}
|
||||
|
||||
QSharedPointer<ChatCore> ChatMessageFileList::getChatCore() const {
|
||||
return mChat;
|
||||
}
|
||||
|
||||
void ChatMessageFileList::setChatCore(QSharedPointer<ChatCore> chatCore) {
|
||||
if (mChat != chatCore) {
|
||||
if (mChat) disconnect(mChat.get());
|
||||
mChat = chatCore;
|
||||
auto lUpdate = [this] {
|
||||
auto fileList = mChat->getFileList();
|
||||
resetData<ChatMessageContentCore>(fileList);
|
||||
};
|
||||
if (mChat) connect(mChat.get(), &ChatCore::fileListChanged, this, lUpdate);
|
||||
lUpdate();
|
||||
emit chatChanged();
|
||||
}
|
||||
}
|
||||
|
||||
QVariant ChatMessageFileList::data(const QModelIndex &index, int role) const {
|
||||
int row = index.row();
|
||||
if (!index.isValid() || row < 0 || row >= mList.count()) return QVariant();
|
||||
if (role == Qt::DisplayRole)
|
||||
return QVariant::fromValue(new ChatMessageContentGui(mList[row].objectCast<ChatMessageContentCore>()));
|
||||
return QVariant();
|
||||
}
|
||||
52
Linphone/core/chat/files/ChatMessageFileList.hpp
Normal file
52
Linphone/core/chat/files/ChatMessageFileList.hpp
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
/*
|
||||
* Copyright (c) 2010-2024 Belledonne Communications SARL.
|
||||
*
|
||||
* This file is part of linphone-desktop
|
||||
* (see https://www.linphone.org).
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef CHAT_MESSAGE_FILE_LIST_H_
|
||||
#define CHAT_MESSAGE_FILE_LIST_H_
|
||||
|
||||
#include "core/chat/ChatCore.hpp"
|
||||
#include "core/proxy/ListProxy.hpp"
|
||||
#include "tool/AbstractObject.hpp"
|
||||
#include "tool/thread/SafeConnection.hpp"
|
||||
#include <QLocale>
|
||||
|
||||
// =============================================================================
|
||||
|
||||
class ChatMessageFileList : public ListProxy, public AbstractObject {
|
||||
Q_OBJECT
|
||||
public:
|
||||
static QSharedPointer<ChatMessageFileList> create();
|
||||
ChatMessageFileList(QObject *parent = Q_NULLPTR);
|
||||
~ChatMessageFileList();
|
||||
|
||||
QSharedPointer<ChatCore> getChatCore() const;
|
||||
void setChatCore(QSharedPointer<ChatCore> chatCore);
|
||||
|
||||
virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
|
||||
|
||||
signals:
|
||||
void chatChanged();
|
||||
|
||||
private:
|
||||
QSharedPointer<ChatCore> mChat;
|
||||
DECLARE_ABSTRACT_OBJECT
|
||||
};
|
||||
|
||||
#endif
|
||||
65
Linphone/core/chat/files/ChatMessageFileProxy.cpp
Normal file
65
Linphone/core/chat/files/ChatMessageFileProxy.cpp
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
|
||||
/*
|
||||
* Copyright (c) 2010-2024 Belledonne Communications SARL.
|
||||
*
|
||||
* This file is part of linphone-desktop
|
||||
* (see https://www.linphone.org).
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "ChatMessageFileProxy.hpp"
|
||||
#include "core/App.hpp"
|
||||
#include "core/chat/ChatGui.hpp"
|
||||
|
||||
DEFINE_ABSTRACT_OBJECT(ChatMessageFileProxy)
|
||||
|
||||
ChatMessageFileProxy::ChatMessageFileProxy(QObject *parent) : LimitProxy(parent) {
|
||||
mList = ChatMessageFileList::create();
|
||||
connect(mList.get(), &ChatMessageFileList::chatChanged, this, &ChatMessageFileProxy::chatGuiChanged);
|
||||
connect(this, &ChatMessageFileProxy::filterTypeChanged, this, [this] { invalidate(); });
|
||||
setSourceModels(new SortFilterList(mList.get()));
|
||||
}
|
||||
|
||||
ChatMessageFileProxy::~ChatMessageFileProxy() {
|
||||
}
|
||||
|
||||
ChatGui *ChatMessageFileProxy::getChatGui() const {
|
||||
return mList && mList->getChatCore() ? new ChatGui(mList->getChatCore()) : nullptr;
|
||||
}
|
||||
|
||||
void ChatMessageFileProxy::setChatGui(ChatGui *chat) const {
|
||||
if (mList) mList->setChatCore(chat ? chat->mCore : nullptr);
|
||||
}
|
||||
|
||||
bool ChatMessageFileProxy::SortFilterList::filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const {
|
||||
if (getFilterType() == (int)FilterContentType::All) return true;
|
||||
else {
|
||||
auto contentCore = getItemAtSource<ChatMessageFileList, ChatMessageContentCore>(sourceRow);
|
||||
if (!contentCore) return false;
|
||||
bool isMedia = Utils::isVideo(contentCore->getFilePath()) || Utils::isImage(contentCore->getFilePath()) ||
|
||||
Utils::isAnimatedImage(contentCore->getFilePath());
|
||||
if (getFilterType() == (int)FilterContentType::Medias) {
|
||||
return isMedia;
|
||||
} else {
|
||||
return !isMedia;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
bool ChatMessageFileProxy::SortFilterList::lessThan(const QModelIndex &sourceLeft,
|
||||
const QModelIndex &sourceRight) const {
|
||||
return true;
|
||||
}
|
||||
56
Linphone/core/chat/files/ChatMessageFileProxy.hpp
Normal file
56
Linphone/core/chat/files/ChatMessageFileProxy.hpp
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
|
||||
/*
|
||||
* Copyright (c) 2010-2024 Belledonne Communications SARL.
|
||||
*
|
||||
* This file is part of linphone-desktop
|
||||
* (see https://www.linphone.org).
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef CHAT_MESSAGE_FILE_PROXY_H_
|
||||
#define CHAT_MESSAGE_FILE_PROXY_H_
|
||||
|
||||
#include "ChatMessageFileList.hpp"
|
||||
#include "core/chat/message/ChatMessageCore.hpp"
|
||||
#include "core/proxy/LimitProxy.hpp"
|
||||
#include "tool/AbstractObject.hpp"
|
||||
|
||||
// =============================================================================
|
||||
|
||||
class ChatMessageFileProxy : public LimitProxy, public AbstractObject {
|
||||
Q_OBJECT
|
||||
Q_PROPERTY(ChatGui *chat READ getChatGui WRITE setChatGui NOTIFY chatGuiChanged)
|
||||
|
||||
public:
|
||||
enum class FilterContentType { All = 0, Medias = 1, Documents = 2 };
|
||||
Q_ENUM(FilterContentType)
|
||||
|
||||
DECLARE_SORTFILTER_CLASS()
|
||||
ChatMessageFileProxy(QObject *parent = Q_NULLPTR);
|
||||
~ChatMessageFileProxy();
|
||||
|
||||
ChatGui *getChatGui() const;
|
||||
void setChatGui(ChatGui *chat) const;
|
||||
|
||||
signals:
|
||||
void chatGuiChanged();
|
||||
void filterChanged();
|
||||
|
||||
protected:
|
||||
QSharedPointer<ChatMessageFileList> mList;
|
||||
DECLARE_ABSTRACT_OBJECT
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
@ -20,7 +20,6 @@
|
|||
|
||||
#include "ChatMessageCore.hpp"
|
||||
#include "core/App.hpp"
|
||||
#include "core/chat/ChatCore.hpp"
|
||||
#include "model/tool/ToolModel.hpp"
|
||||
|
||||
DEFINE_ABSTRACT_OBJECT(ChatMessageCore)
|
||||
|
|
@ -406,6 +405,10 @@ bool ChatMessageCore::isFromChatGroup() const {
|
|||
return mIsFromChatGroup;
|
||||
}
|
||||
|
||||
bool ChatMessageCore::hasFileContent() const {
|
||||
return mHasFileContent;
|
||||
}
|
||||
|
||||
bool ChatMessageCore::isRead() const {
|
||||
return mIsRead;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -131,6 +131,8 @@ public:
|
|||
bool isRemoteMessage() const;
|
||||
bool isFromChatGroup() const;
|
||||
|
||||
bool hasFileContent() const;
|
||||
|
||||
bool isRead() const;
|
||||
void setIsRead(bool read);
|
||||
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ EventLogList::EventLogList(QObject *parent) : ListProxy(parent) {
|
|||
|
||||
EventLogList::~EventLogList() {
|
||||
mustBeInMainThread("~" + getClassName());
|
||||
mModelConnection = nullptr;
|
||||
}
|
||||
|
||||
ChatGui *EventLogList::getChat() const {
|
||||
|
|
@ -97,9 +96,7 @@ int EventLogList::findFirstUnreadIndex() {
|
|||
}
|
||||
|
||||
void EventLogList::setSelf(QSharedPointer<EventLogList> me) {
|
||||
mModelConnection = SafeConnection<EventLogList, CoreModel>::create(me, CoreModel::getInstance());
|
||||
|
||||
mModelConnection->makeConnectToCore(&EventLogList::lUpdate, [this]() {
|
||||
connect(this, &EventLogList::lUpdate, this, [this]() {
|
||||
for (auto &event : getSharedList<EventLogCore>()) {
|
||||
auto message = event->getChatMessageCore();
|
||||
if (message) disconnect(message.get(), &ChatMessageCore::deleted, this, nullptr);
|
||||
|
|
|
|||
|
|
@ -58,7 +58,6 @@ signals:
|
|||
private:
|
||||
QString mFilter;
|
||||
QSharedPointer<ChatCore> mChatCore;
|
||||
QSharedPointer<SafeConnection<EventLogList, CoreModel>> mModelConnection;
|
||||
DECLARE_ABSTRACT_OBJECT
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -53,8 +53,6 @@ public:
|
|||
|
||||
signals:
|
||||
void chatChanged();
|
||||
void filterChanged();
|
||||
void messageInserted(int index, ChatMessageGui *message);
|
||||
|
||||
protected:
|
||||
QSharedPointer<ChatMessageContentList> mList;
|
||||
|
|
|
|||
|
|
@ -523,74 +523,74 @@
|
|||
<context>
|
||||
<name>App</name>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="340"/>
|
||||
<location filename="../../core/App.cpp" line="341"/>
|
||||
<source>remote_provisioning_dialog</source>
|
||||
<extracomment>Voulez-vous télécharger et appliquer la configuration depuis cette adresse ?</extracomment>
|
||||
<translation>Möchten Sie die Remote-Konfiguration von dieser Adresse herunterladen und anwenden?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="816"/>
|
||||
<location filename="../../core/App.cpp" line="818"/>
|
||||
<source>application_description</source>
|
||||
<extracomment>"A free and open source SIP video-phone."</extracomment>
|
||||
<translation>Ein kostenloses Open-Source SIP Video-Telefon.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="818"/>
|
||||
<location filename="../../core/App.cpp" line="820"/>
|
||||
<source>command_line_arg_order</source>
|
||||
<extracomment>"Send an order to the application towards a command line"</extracomment>
|
||||
<translation>Kommandozeilen-Befehl an die Anwendung schicken</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="822"/>
|
||||
<location filename="../../core/App.cpp" line="824"/>
|
||||
<source>command_line_option_show_help</source>
|
||||
<translation>Zeige Hilfe</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="827"/>
|
||||
<location filename="../../core/App.cpp" line="829"/>
|
||||
<source>command_line_option_show_app_version</source>
|
||||
<translation type="unfinished">Zeige App-Version</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="834"/>
|
||||
<location filename="../../core/App.cpp" line="836"/>
|
||||
<source>command_line_option_config_to_fetch</source>
|
||||
<extracomment>"Specify the linphone configuration file to be fetched. It will be merged with the current configuration."</extracomment>
|
||||
<translation>Abzurufende Linphone-Konfigurationsdatei angeben. Sie wird mit der aktuellen Konfiguration zusammengeführt.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="836"/>
|
||||
<location filename="../../core/App.cpp" line="838"/>
|
||||
<source>command_line_option_config_to_fetch_arg</source>
|
||||
<extracomment>"URL, path or file"</extracomment>
|
||||
<translation>URL, Pfad oder Datei</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="841"/>
|
||||
<location filename="../../core/App.cpp" line="843"/>
|
||||
<source>command_line_option_minimized</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="844"/>
|
||||
<location filename="../../core/App.cpp" line="846"/>
|
||||
<source>command_line_option_log_to_stdout</source>
|
||||
<translation>Debug-Informationen auf der Standardausgabe ausgeben</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="847"/>
|
||||
<location filename="../../core/App.cpp" line="849"/>
|
||||
<source>command_line_option_print_app_logs_only</source>
|
||||
<extracomment>"Print only logs from the application"</extracomment>
|
||||
<translation>Nur Anwendungs-Logs ausgeben</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="1217"/>
|
||||
<location filename="../../core/App.cpp" line="1219"/>
|
||||
<source>hide_action</source>
|
||||
<extracomment>"Cacher" "Afficher"</extracomment>
|
||||
<translation>Ausblenden</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="1217"/>
|
||||
<location filename="../../core/App.cpp" line="1219"/>
|
||||
<source>show_action</source>
|
||||
<translation>Zeigen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="1232"/>
|
||||
<location filename="../../core/App.cpp" line="1234"/>
|
||||
<source>quit_action</source>
|
||||
<extracomment>"Quitter"</extracomment>
|
||||
<translation>Beenden</translation>
|
||||
|
|
@ -1728,13 +1728,13 @@
|
|||
<context>
|
||||
<name>ChatCore</name>
|
||||
<message>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="140"/>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="163"/>
|
||||
<source>info_toast_deleted_title</source>
|
||||
<extracomment>Deleted</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="142"/>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="165"/>
|
||||
<source>info_toast_deleted_message_history</source>
|
||||
<extracomment>Message history has been deleted</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
|
|
@ -1743,13 +1743,13 @@
|
|||
<context>
|
||||
<name>ChatDroppableTextArea</name>
|
||||
<message>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="149"/>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="157"/>
|
||||
<source>chat_view_send_area_placeholder_text</source>
|
||||
<extracomment>Say something… : placeholder text for sending message text area</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="184"/>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="192"/>
|
||||
<source>cannot_record_while_in_call_tooltip</source>
|
||||
<extracomment>Cannot record a message while a call is ongoing</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
|
|
@ -1957,19 +1957,19 @@ Error</extracomment>
|
|||
<context>
|
||||
<name>ChatMessageCore</name>
|
||||
<message>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="136"/>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="135"/>
|
||||
<source>all_reactions_label</source>
|
||||
<extracomment>"Reactions": all reactions for one message label</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="190"/>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="189"/>
|
||||
<source>info_toast_deleted_title</source>
|
||||
<extracomment>Deleted</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="192"/>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="191"/>
|
||||
<source>info_toast_deleted_message</source>
|
||||
<extracomment>The message has been deleted</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
|
|
@ -2022,20 +2022,20 @@ Error</extracomment>
|
|||
<context>
|
||||
<name>ChatMessagesListView</name>
|
||||
<message>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="91"/>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="92"/>
|
||||
<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="101"/>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="102"/>
|
||||
<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="230"/>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="231"/>
|
||||
<source>chat_message_is_writing_info</source>
|
||||
<extracomment>%1 is writing…</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
|
|
@ -3070,55 +3070,55 @@ Error</extracomment>
|
|||
<context>
|
||||
<name>GroupChatInfoParticipants</name>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="80"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="91"/>
|
||||
<source>group_infos_participant_is_admin</source>
|
||||
<translation>Admin</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="193"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="204"/>
|
||||
<source>group_infos_manage_participants_title</source>
|
||||
<extracomment>"Gérer des participants"</extracomment>
|
||||
<translation>Manage Participants</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="110"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="121"/>
|
||||
<source>menu_see_existing_contact</source>
|
||||
<extracomment>"Show contact"</extracomment>
|
||||
<translation>Kontakt anzeigen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="112"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="123"/>
|
||||
<source>menu_add_address_to_contacts</source>
|
||||
<extracomment>"Add to contacts"</extracomment>
|
||||
<translation>Zu Kontakten hinzufügen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="129"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="140"/>
|
||||
<source>group_infos_give_admin_rights</source>
|
||||
<translation>Give admin rights</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="129"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="140"/>
|
||||
<source>group_infos_remove_admin_rights</source>
|
||||
<translation>Remove admin rights</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="141"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="152"/>
|
||||
<source>group_infos_copy_sip_address</source>
|
||||
<translation>Copy SIP Address</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="161"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="172"/>
|
||||
<source>group_infos_remove_participant</source>
|
||||
<translation>Remove participant</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="168"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="179"/>
|
||||
<source>group_infos_remove_participants_toast_title</source>
|
||||
<translation>Remove participant ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="169"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="180"/>
|
||||
<source>group_infos_remove_participants_toast_message</source>
|
||||
<translation>Participant will be removed from chat room.</translation>
|
||||
</message>
|
||||
|
|
@ -3126,37 +3126,37 @@ Error</extracomment>
|
|||
<context>
|
||||
<name>GroupConversationInfos</name>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="142"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="143"/>
|
||||
<source>group_infos_call</source>
|
||||
<extracomment>"Appel"</extracomment>
|
||||
<translation>Anrufen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="127"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="128"/>
|
||||
<source>group_infos_mute</source>
|
||||
<translation>Stummschalten</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="127"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="128"/>
|
||||
<source>group_infos_unmute</source>
|
||||
<extracomment>"Sourdine"</extracomment>
|
||||
<translation>Unmute</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="157"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="158"/>
|
||||
<source>group_infos_meeting</source>
|
||||
<extracomment>"Réunion"</extracomment>
|
||||
<translation>Meeting</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="168"/>
|
||||
<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="204"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="209"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="206"/>
|
||||
<source>group_infos_media_docs</source>
|
||||
<extracomment>Medias & documents</extracomment>
|
||||
<translation>Medien & Dokumente</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
@ -3165,55 +3165,62 @@ Error</extracomment>
|
|||
<translation type="vanished">Geteilte Medien</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="219"/>
|
||||
<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="231"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="235"/>
|
||||
<source>group_infos_other_actions</source>
|
||||
<translation>Weitere Aktionen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="236"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="240"/>
|
||||
<source>group_infos_enable_ephemerals</source>
|
||||
<translation>Flüchtige Nachrichten aktivieren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="236"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="240"/>
|
||||
<source>group_infos_ephemerals</source>
|
||||
<translation>Ephemeral messages : </translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="246"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="250"/>
|
||||
<source>group_infos_leave_room</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="265"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="269"/>
|
||||
<source>group_infos_delete_history</source>
|
||||
<translation>Verlauf löschen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="270"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="274"/>
|
||||
<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="272"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="276"/>
|
||||
<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="251"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="255"/>
|
||||
<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="253"/>
|
||||
<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="257"/>
|
||||
<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>
|
||||
|
|
@ -4324,82 +4331,82 @@ Error</extracomment>
|
|||
<context>
|
||||
<name>OneOneConversationInfos</name>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="72"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="73"/>
|
||||
<source>one_one_infos_call</source>
|
||||
<extracomment>"Appel"</extracomment>
|
||||
<translation>Anrufen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="86"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="87"/>
|
||||
<source>one_one_infos_mute</source>
|
||||
<translation>Stummschalten</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="86"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="87"/>
|
||||
<source>one_one_infos_unmute</source>
|
||||
<extracomment>"Sourdine"</extracomment>
|
||||
<translation>Unmute</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="102"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="103"/>
|
||||
<source>one_one_infos_search</source>
|
||||
<extracomment>"Rechercher"</extracomment>
|
||||
<translation>Suchen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="113"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="114"/>
|
||||
<source>one_one_infos_media_docs</source>
|
||||
<translation>Medien & Dokumente</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="118"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="119"/>
|
||||
<source>one_one_infos_shared_media</source>
|
||||
<translation>Geteilte Medien</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="128"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="129"/>
|
||||
<source>one_one_infos_shared_docs</source>
|
||||
<translation>Geteilte Dokumente</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="142"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="143"/>
|
||||
<source>one_one_infos_other_actions</source>
|
||||
<translation>Weitere Aktionen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="161"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="162"/>
|
||||
<source>one_one_infos_enable_ephemerals</source>
|
||||
<translation>Flüchtige Nachrichten aktivieren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="161"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="162"/>
|
||||
<source>one_one_infos_ephemerals</source>
|
||||
<translation>Ephemeral messages : </translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="171"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="172"/>
|
||||
<source>one_one_infos_delete_history</source>
|
||||
<translation>Verlauf löschen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="176"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="177"/>
|
||||
<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="178"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="179"/>
|
||||
<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="147"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="148"/>
|
||||
<source>one_one_infos_open_contact</source>
|
||||
<translation>Kontakt öffnen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="147"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="148"/>
|
||||
<source>one_one_infos_create_contact</source>
|
||||
<translation>Kontakt erstellen</translation>
|
||||
</message>
|
||||
|
|
@ -4952,6 +4959,18 @@ Pour les activer dans un projet commercial, merci de nous contacter.</source>
|
|||
<extracomment>Reply to %1</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="517"/>
|
||||
<source>shared_medias_title</source>
|
||||
<extracomment>Shared medias</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="519"/>
|
||||
<source>shared_documents_title</source>
|
||||
<extracomment>Shared documents</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsPage</name>
|
||||
|
|
|
|||
|
|
@ -523,74 +523,74 @@
|
|||
<context>
|
||||
<name>App</name>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="340"/>
|
||||
<location filename="../../core/App.cpp" line="341"/>
|
||||
<source>remote_provisioning_dialog</source>
|
||||
<extracomment>Voulez-vous télécharger et appliquer la configuration depuis cette adresse ?</extracomment>
|
||||
<translation>Do you want to download and apply remote provisioning from this address ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="816"/>
|
||||
<location filename="../../core/App.cpp" line="818"/>
|
||||
<source>application_description</source>
|
||||
<extracomment>"A free and open source SIP video-phone."</extracomment>
|
||||
<translation>A free and open source SIP video-phone.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="818"/>
|
||||
<location filename="../../core/App.cpp" line="820"/>
|
||||
<source>command_line_arg_order</source>
|
||||
<extracomment>"Send an order to the application towards a command line"</extracomment>
|
||||
<translation>Send an order to the application towards a command line</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="822"/>
|
||||
<location filename="../../core/App.cpp" line="824"/>
|
||||
<source>command_line_option_show_help</source>
|
||||
<translation>Show this help</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="827"/>
|
||||
<location filename="../../core/App.cpp" line="829"/>
|
||||
<source>command_line_option_show_app_version</source>
|
||||
<translation>Show app version</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="834"/>
|
||||
<location filename="../../core/App.cpp" line="836"/>
|
||||
<source>command_line_option_config_to_fetch</source>
|
||||
<extracomment>"Specify the linphone configuration file to be fetched. It will be merged with the current configuration."</extracomment>
|
||||
<translation>Specify the linphone configuration file to be fetched. It will be merged with the current configuration.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="836"/>
|
||||
<location filename="../../core/App.cpp" line="838"/>
|
||||
<source>command_line_option_config_to_fetch_arg</source>
|
||||
<extracomment>"URL, path or file"</extracomment>
|
||||
<translation>URL, path or file</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="841"/>
|
||||
<location filename="../../core/App.cpp" line="843"/>
|
||||
<source>command_line_option_minimized</source>
|
||||
<translation>Minimize</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="844"/>
|
||||
<location filename="../../core/App.cpp" line="846"/>
|
||||
<source>command_line_option_log_to_stdout</source>
|
||||
<translation>Log to stdout some debug information while running</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="847"/>
|
||||
<location filename="../../core/App.cpp" line="849"/>
|
||||
<source>command_line_option_print_app_logs_only</source>
|
||||
<extracomment>"Print only logs from the application"</extracomment>
|
||||
<translation>Print only logs from the application</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="1217"/>
|
||||
<location filename="../../core/App.cpp" line="1219"/>
|
||||
<source>hide_action</source>
|
||||
<extracomment>"Cacher" "Afficher"</extracomment>
|
||||
<translation>Hide</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="1217"/>
|
||||
<location filename="../../core/App.cpp" line="1219"/>
|
||||
<source>show_action</source>
|
||||
<translation>Show</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="1232"/>
|
||||
<location filename="../../core/App.cpp" line="1234"/>
|
||||
<source>quit_action</source>
|
||||
<extracomment>"Quitter"</extracomment>
|
||||
<translation>Quit</translation>
|
||||
|
|
@ -1690,13 +1690,13 @@
|
|||
<context>
|
||||
<name>ChatCore</name>
|
||||
<message>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="140"/>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="163"/>
|
||||
<source>info_toast_deleted_title</source>
|
||||
<extracomment>Deleted</extracomment>
|
||||
<translation>Deleted</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="142"/>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="165"/>
|
||||
<source>info_toast_deleted_message_history</source>
|
||||
<extracomment>Message history has been deleted</extracomment>
|
||||
<translation>Message history has been deleted</translation>
|
||||
|
|
@ -1705,13 +1705,13 @@
|
|||
<context>
|
||||
<name>ChatDroppableTextArea</name>
|
||||
<message>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="149"/>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="157"/>
|
||||
<source>chat_view_send_area_placeholder_text</source>
|
||||
<extracomment>Say something… : placeholder text for sending message text area</extracomment>
|
||||
<translation>Say something…</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="184"/>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="192"/>
|
||||
<source>cannot_record_while_in_call_tooltip</source>
|
||||
<extracomment>Cannot record a message while a call is ongoing</extracomment>
|
||||
<translation>Cannot record a message while a call is ongoing</translation>
|
||||
|
|
@ -1919,19 +1919,19 @@ Error</extracomment>
|
|||
<context>
|
||||
<name>ChatMessageCore</name>
|
||||
<message>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="136"/>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="135"/>
|
||||
<source>all_reactions_label</source>
|
||||
<extracomment>"Reactions": all reactions for one message label</extracomment>
|
||||
<translation>Reactions</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="190"/>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="189"/>
|
||||
<source>info_toast_deleted_title</source>
|
||||
<extracomment>Deleted</extracomment>
|
||||
<translation>Deleted</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="192"/>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="191"/>
|
||||
<source>info_toast_deleted_message</source>
|
||||
<extracomment>The message has been deleted</extracomment>
|
||||
<translation>The message has been deleted</translation>
|
||||
|
|
@ -1984,13 +1984,13 @@ Error</extracomment>
|
|||
<context>
|
||||
<name>ChatMessagesListView</name>
|
||||
<message>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="91"/>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="92"/>
|
||||
<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="101"/>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="102"/>
|
||||
<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>
|
||||
|
|
@ -1998,7 +1998,7 @@ Error</extracomment>
|
|||
Only your correspondent can decrypt them.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="230"/>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="231"/>
|
||||
<source>chat_message_is_writing_info</source>
|
||||
<extracomment>%1 is writing…</extracomment>
|
||||
<translation>%1 is writing…</translation>
|
||||
|
|
@ -2995,55 +2995,55 @@ Expiration : %1</translation>
|
|||
<context>
|
||||
<name>GroupChatInfoParticipants</name>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="193"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="204"/>
|
||||
<source>group_infos_manage_participants_title</source>
|
||||
<extracomment>"Gérer des participants"</extracomment>
|
||||
<translation>Manage participants</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="80"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="91"/>
|
||||
<source>group_infos_participant_is_admin</source>
|
||||
<translation>Admin</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="110"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="121"/>
|
||||
<source>menu_see_existing_contact</source>
|
||||
<extracomment>"Show contact"</extracomment>
|
||||
<translation>Show contact</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="112"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="123"/>
|
||||
<source>menu_add_address_to_contacts</source>
|
||||
<extracomment>"Add to contacts"</extracomment>
|
||||
<translation>Add to contacts</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="129"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="140"/>
|
||||
<source>group_infos_give_admin_rights</source>
|
||||
<translation>Give admin rights</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="129"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="140"/>
|
||||
<source>group_infos_remove_admin_rights</source>
|
||||
<translation>Remove admin rights</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="141"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="152"/>
|
||||
<source>group_infos_copy_sip_address</source>
|
||||
<translation>Copy SIP Address</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="161"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="172"/>
|
||||
<source>group_infos_remove_participant</source>
|
||||
<translation>Remove participant</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="168"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="179"/>
|
||||
<source>group_infos_remove_participants_toast_title</source>
|
||||
<translation>Remove participant ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="169"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="180"/>
|
||||
<source>group_infos_remove_participants_toast_message</source>
|
||||
<translation>Participant will be removed from chat room.</translation>
|
||||
</message>
|
||||
|
|
@ -3051,89 +3051,96 @@ Expiration : %1</translation>
|
|||
<context>
|
||||
<name>GroupConversationInfos</name>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="142"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="143"/>
|
||||
<source>group_infos_call</source>
|
||||
<extracomment>"Appel"</extracomment>
|
||||
<translation>Call</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="127"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="128"/>
|
||||
<source>group_infos_mute</source>
|
||||
<translation>Mute</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="127"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="128"/>
|
||||
<source>group_infos_unmute</source>
|
||||
<extracomment>"Sourdine"</extracomment>
|
||||
<translation>Unmute</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="157"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="158"/>
|
||||
<source>group_infos_meeting</source>
|
||||
<extracomment>"Réunion"</extracomment>
|
||||
<translation>Meeting</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="168"/>
|
||||
<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="204"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="209"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="206"/>
|
||||
<source>group_infos_media_docs</source>
|
||||
<extracomment>Medias & documents</extracomment>
|
||||
<translation>Medias & documents</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="219"/>
|
||||
<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="231"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="235"/>
|
||||
<source>group_infos_other_actions</source>
|
||||
<translation>Other actions</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="236"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="240"/>
|
||||
<source>group_infos_enable_ephemerals</source>
|
||||
<translation>Enable ephemeral messages</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="236"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="240"/>
|
||||
<source>group_infos_ephemerals</source>
|
||||
<translation>Ephemeral messages : </translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="265"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="269"/>
|
||||
<source>group_infos_delete_history</source>
|
||||
<translation>Delete history</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="270"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="274"/>
|
||||
<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="272"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="276"/>
|
||||
<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="246"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="250"/>
|
||||
<source>group_infos_leave_room</source>
|
||||
<translation>Leave Chat Room</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="251"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="255"/>
|
||||
<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="253"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="257"/>
|
||||
<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>
|
||||
|
|
@ -3983,11 +3990,6 @@ Expiration : %1</translation>
|
|||
<extracomment>Message status</extracomment>
|
||||
<translation>Message status</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>click_to_delete_reaction_info</source>
|
||||
<extracomment>Click to delete</extracomment>
|
||||
<translation type="vanished">Click to delete</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>MessageReactionsInfos</name>
|
||||
|
|
@ -4235,82 +4237,82 @@ Expiration : %1</translation>
|
|||
<context>
|
||||
<name>OneOneConversationInfos</name>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="72"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="73"/>
|
||||
<source>one_one_infos_call</source>
|
||||
<extracomment>"Appel"</extracomment>
|
||||
<translation>Call</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="86"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="87"/>
|
||||
<source>one_one_infos_mute</source>
|
||||
<translation>Mute</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="86"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="87"/>
|
||||
<source>one_one_infos_unmute</source>
|
||||
<extracomment>"Sourdine"</extracomment>
|
||||
<translation>Unmute</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="102"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="103"/>
|
||||
<source>one_one_infos_search</source>
|
||||
<extracomment>"Rechercher"</extracomment>
|
||||
<translation>Search</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="113"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="114"/>
|
||||
<source>one_one_infos_media_docs</source>
|
||||
<translation>Medias & documents</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="118"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="119"/>
|
||||
<source>one_one_infos_shared_media</source>
|
||||
<translation>Shared medias</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="128"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="129"/>
|
||||
<source>one_one_infos_shared_docs</source>
|
||||
<translation>Shared documents</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="142"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="143"/>
|
||||
<source>one_one_infos_other_actions</source>
|
||||
<translation>Other actions</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="161"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="162"/>
|
||||
<source>one_one_infos_enable_ephemerals</source>
|
||||
<translation>Enable ephemeral messages</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="161"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="162"/>
|
||||
<source>one_one_infos_ephemerals</source>
|
||||
<translation>Ephemeral messages : </translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="171"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="172"/>
|
||||
<source>one_one_infos_delete_history</source>
|
||||
<translation>Delete history</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="176"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="177"/>
|
||||
<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="178"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="179"/>
|
||||
<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="147"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="148"/>
|
||||
<source>one_one_infos_open_contact</source>
|
||||
<translation>Show contact</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="147"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="148"/>
|
||||
<source>one_one_infos_create_contact</source>
|
||||
<translation>Create contact</translation>
|
||||
</message>
|
||||
|
|
@ -4851,6 +4853,18 @@ To enable them in a commercial project, please contact us.</translation>
|
|||
<extracomment>Reply to %1</extracomment>
|
||||
<translation>Reply to %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="517"/>
|
||||
<source>shared_medias_title</source>
|
||||
<extracomment>Shared medias</extracomment>
|
||||
<translation>Shared medias</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="519"/>
|
||||
<source>shared_documents_title</source>
|
||||
<extracomment>Shared documents</extracomment>
|
||||
<translation>Shared documents</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsPage</name>
|
||||
|
|
|
|||
|
|
@ -523,74 +523,74 @@
|
|||
<context>
|
||||
<name>App</name>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="340"/>
|
||||
<location filename="../../core/App.cpp" line="341"/>
|
||||
<source>remote_provisioning_dialog</source>
|
||||
<extracomment>Voulez-vous télécharger et appliquer la configuration depuis cette adresse ?</extracomment>
|
||||
<translation>Voulez-vous télécharger et appliquer la configuration depuis cette adresse ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="816"/>
|
||||
<location filename="../../core/App.cpp" line="818"/>
|
||||
<source>application_description</source>
|
||||
<extracomment>"A free and open source SIP video-phone."</extracomment>
|
||||
<translation>A free and open source SIP video-phone.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="818"/>
|
||||
<location filename="../../core/App.cpp" line="820"/>
|
||||
<source>command_line_arg_order</source>
|
||||
<extracomment>"Send an order to the application towards a command line"</extracomment>
|
||||
<translation>Send an order to the application towards a command line</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="822"/>
|
||||
<location filename="../../core/App.cpp" line="824"/>
|
||||
<source>command_line_option_show_help</source>
|
||||
<translation>Show this help</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="827"/>
|
||||
<location filename="../../core/App.cpp" line="829"/>
|
||||
<source>command_line_option_show_app_version</source>
|
||||
<translation>Afficher la version de l'application</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="834"/>
|
||||
<location filename="../../core/App.cpp" line="836"/>
|
||||
<source>command_line_option_config_to_fetch</source>
|
||||
<extracomment>"Specify the linphone configuration file to be fetched. It will be merged with the current configuration."</extracomment>
|
||||
<translation>Specify the linphone configuration file to be fetched. It will be merged with the current configuration.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="836"/>
|
||||
<location filename="../../core/App.cpp" line="838"/>
|
||||
<source>command_line_option_config_to_fetch_arg</source>
|
||||
<extracomment>"URL, path or file"</extracomment>
|
||||
<translation>URL, path or file</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="841"/>
|
||||
<location filename="../../core/App.cpp" line="843"/>
|
||||
<source>command_line_option_minimized</source>
|
||||
<translation>Minimiser</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="844"/>
|
||||
<location filename="../../core/App.cpp" line="846"/>
|
||||
<source>command_line_option_log_to_stdout</source>
|
||||
<translation>Log to stdout some debug information while running</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="847"/>
|
||||
<location filename="../../core/App.cpp" line="849"/>
|
||||
<source>command_line_option_print_app_logs_only</source>
|
||||
<extracomment>"Print only logs from the application"</extracomment>
|
||||
<translation>Print only logs from the application</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="1217"/>
|
||||
<location filename="../../core/App.cpp" line="1219"/>
|
||||
<source>hide_action</source>
|
||||
<extracomment>"Cacher" "Afficher"</extracomment>
|
||||
<translation>Cacher</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="1217"/>
|
||||
<location filename="../../core/App.cpp" line="1219"/>
|
||||
<source>show_action</source>
|
||||
<translation>Afficher</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/App.cpp" line="1232"/>
|
||||
<location filename="../../core/App.cpp" line="1234"/>
|
||||
<source>quit_action</source>
|
||||
<extracomment>"Quitter"</extracomment>
|
||||
<translation>Quitter</translation>
|
||||
|
|
@ -1690,13 +1690,13 @@
|
|||
<context>
|
||||
<name>ChatCore</name>
|
||||
<message>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="140"/>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="163"/>
|
||||
<source>info_toast_deleted_title</source>
|
||||
<extracomment>Deleted</extracomment>
|
||||
<translation>Supprimé</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="142"/>
|
||||
<location filename="../../core/chat/ChatCore.cpp" line="165"/>
|
||||
<source>info_toast_deleted_message_history</source>
|
||||
<extracomment>Message history has been deleted</extracomment>
|
||||
<translation>L'historique des messages a été supprimé</translation>
|
||||
|
|
@ -1705,13 +1705,13 @@
|
|||
<context>
|
||||
<name>ChatDroppableTextArea</name>
|
||||
<message>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="149"/>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="157"/>
|
||||
<source>chat_view_send_area_placeholder_text</source>
|
||||
<extracomment>Say something… : placeholder text for sending message text area</extracomment>
|
||||
<translation>Dites quelque chose…</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="184"/>
|
||||
<location filename="../../view/Control/Input/Chat/ChatDroppableTextArea.qml" line="192"/>
|
||||
<source>cannot_record_while_in_call_tooltip</source>
|
||||
<extracomment>Cannot record a message while a call is ongoing</extracomment>
|
||||
<translation>Impossible d'enregistrer un message vocal pendant un appel</translation>
|
||||
|
|
@ -1919,19 +1919,19 @@ Error</extracomment>
|
|||
<context>
|
||||
<name>ChatMessageCore</name>
|
||||
<message>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="136"/>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="135"/>
|
||||
<source>all_reactions_label</source>
|
||||
<extracomment>"Reactions": all reactions for one message label</extracomment>
|
||||
<translation>Réactions</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="190"/>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="189"/>
|
||||
<source>info_toast_deleted_title</source>
|
||||
<extracomment>Deleted</extracomment>
|
||||
<translation>Supprimé</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="192"/>
|
||||
<location filename="../../core/chat/message/ChatMessageCore.cpp" line="191"/>
|
||||
<source>info_toast_deleted_message</source>
|
||||
<extracomment>The message has been deleted</extracomment>
|
||||
<translation>Le message a été supprimé</translation>
|
||||
|
|
@ -1984,13 +1984,13 @@ Error</extracomment>
|
|||
<context>
|
||||
<name>ChatMessagesListView</name>
|
||||
<message>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="91"/>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="92"/>
|
||||
<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="101"/>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="102"/>
|
||||
<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>
|
||||
|
|
@ -1998,7 +1998,7 @@ Error</extracomment>
|
|||
en bout. Seul votre correspondant peut les déchiffrer.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="230"/>
|
||||
<location filename="../../view/Control/Display/Chat/ChatMessagesListView.qml" line="231"/>
|
||||
<source>chat_message_is_writing_info</source>
|
||||
<extracomment>%1 is writing…</extracomment>
|
||||
<translation>%1 est en train d'écrire…</translation>
|
||||
|
|
@ -2995,55 +2995,55 @@ Expiration : %1</translation>
|
|||
<context>
|
||||
<name>GroupChatInfoParticipants</name>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="193"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="204"/>
|
||||
<source>group_infos_manage_participants_title</source>
|
||||
<extracomment>"Gérer des participants"</extracomment>
|
||||
<translation>Gérer les participants</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="80"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="91"/>
|
||||
<source>group_infos_participant_is_admin</source>
|
||||
<translation>Admin</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="110"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="121"/>
|
||||
<source>menu_see_existing_contact</source>
|
||||
<extracomment>"Show contact"</extracomment>
|
||||
<translation>Voir le contact</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="112"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="123"/>
|
||||
<source>menu_add_address_to_contacts</source>
|
||||
<extracomment>"Add to contacts"</extracomment>
|
||||
<translation>Ajouter aux contacts</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="129"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="140"/>
|
||||
<source>group_infos_give_admin_rights</source>
|
||||
<translation>Donner les droits admins</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="129"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="140"/>
|
||||
<source>group_infos_remove_admin_rights</source>
|
||||
<translation>Retirer les droits admins</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="141"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="152"/>
|
||||
<source>group_infos_copy_sip_address</source>
|
||||
<translation>Copier l’adresse SIP</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="161"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="172"/>
|
||||
<source>group_infos_remove_participant</source>
|
||||
<translation>Retirer le participant</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="168"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="179"/>
|
||||
<source>group_infos_remove_participants_toast_title</source>
|
||||
<translation>Retirer le participant ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="169"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupChatInfoParticipants.qml" line="180"/>
|
||||
<source>group_infos_remove_participants_toast_message</source>
|
||||
<translation>La participant sere retiré de la conversation</translation>
|
||||
</message>
|
||||
|
|
@ -3051,89 +3051,96 @@ Expiration : %1</translation>
|
|||
<context>
|
||||
<name>GroupConversationInfos</name>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="142"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="143"/>
|
||||
<source>group_infos_call</source>
|
||||
<extracomment>"Appel"</extracomment>
|
||||
<translation>Appel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="127"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="128"/>
|
||||
<source>group_infos_mute</source>
|
||||
<translation>Sourdine</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="127"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="128"/>
|
||||
<source>group_infos_unmute</source>
|
||||
<extracomment>"Sourdine"</extracomment>
|
||||
<translation>Réactiver les notifications</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="157"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="158"/>
|
||||
<source>group_infos_meeting</source>
|
||||
<extracomment>"Réunion"</extracomment>
|
||||
<translation>Réunion</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="168"/>
|
||||
<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="204"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="209"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="206"/>
|
||||
<source>group_infos_media_docs</source>
|
||||
<extracomment>Medias & documents</extracomment>
|
||||
<translation>Medias & documents</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="219"/>
|
||||
<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="231"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="235"/>
|
||||
<source>group_infos_other_actions</source>
|
||||
<translation>Autres actions</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="236"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="240"/>
|
||||
<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="236"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="240"/>
|
||||
<source>group_infos_ephemerals</source>
|
||||
<translation>Messages éphémères : </translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="265"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="269"/>
|
||||
<source>group_infos_delete_history</source>
|
||||
<translation>Supprimer l'historique</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="270"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="274"/>
|
||||
<source>group_infos_delete_history_toast_title</source>
|
||||
<extracomment>Delete history ?</extracomment>
|
||||
<translation>Supprimer l'historique ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="272"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="276"/>
|
||||
<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="246"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="250"/>
|
||||
<source>group_infos_leave_room</source>
|
||||
<translation>Quitter la conversation</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="251"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="255"/>
|
||||
<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="253"/>
|
||||
<location filename="../../view/Page/Layout/Chat/GroupConversationInfos.qml" line="257"/>
|
||||
<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>
|
||||
|
|
@ -4230,82 +4237,82 @@ Expiration : %1</translation>
|
|||
<context>
|
||||
<name>OneOneConversationInfos</name>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="72"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="73"/>
|
||||
<source>one_one_infos_call</source>
|
||||
<extracomment>"Appel"</extracomment>
|
||||
<translation>Appel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="86"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="87"/>
|
||||
<source>one_one_infos_mute</source>
|
||||
<translation>Sourdine</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="86"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="87"/>
|
||||
<source>one_one_infos_unmute</source>
|
||||
<extracomment>"Sourdine"</extracomment>
|
||||
<translation>Réactiver les notifications</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="102"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="103"/>
|
||||
<source>one_one_infos_search</source>
|
||||
<extracomment>"Rechercher"</extracomment>
|
||||
<translation>Rechercher</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="113"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="114"/>
|
||||
<source>one_one_infos_media_docs</source>
|
||||
<translation>Medias & documents</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="118"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="119"/>
|
||||
<source>one_one_infos_shared_media</source>
|
||||
<translation>Médias partagés</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="128"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="129"/>
|
||||
<source>one_one_infos_shared_docs</source>
|
||||
<translation>Documents partagés</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="142"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="143"/>
|
||||
<source>one_one_infos_other_actions</source>
|
||||
<translation>Autres actions</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="161"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="162"/>
|
||||
<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="161"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="162"/>
|
||||
<source>one_one_infos_ephemerals</source>
|
||||
<translation>Messages éphémères : </translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="171"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="172"/>
|
||||
<source>one_one_infos_delete_history</source>
|
||||
<translation>Supprimer l'historique</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="176"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="177"/>
|
||||
<source>one_one_infos_delete_history_toast_title</source>
|
||||
<extracomment>Delete history ?</extracomment>
|
||||
<translation>Supprimer l'historique ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="178"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="179"/>
|
||||
<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="147"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="148"/>
|
||||
<source>one_one_infos_open_contact</source>
|
||||
<translation>Voir le contact</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="147"/>
|
||||
<location filename="../../view/Page/Layout/Chat/OneOneConversationInfos.qml" line="148"/>
|
||||
<source>one_one_infos_create_contact</source>
|
||||
<translation>Créer un contact</translation>
|
||||
</message>
|
||||
|
|
@ -4846,6 +4853,18 @@ Pour les activer dans un projet commercial, merci de nous contacter.</translatio
|
|||
<extracomment>Reply to %1</extracomment>
|
||||
<translation>Réponse à %1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../view/Page/Form/Chat/SelectedChatView.qml" line="517"/>
|
||||
<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="519"/>
|
||||
<source>shared_documents_title</source>
|
||||
<extracomment>Shared documents</extracomment>
|
||||
<translation>Documents partagés</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsPage</name>
|
||||
|
|
|
|||
|
|
@ -159,6 +159,7 @@ list(APPEND _LINPHONEAPP_QML_FILES
|
|||
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/ChatInfoActionsGroup.qml
|
||||
view/Page/Layout/Chat/GroupChatInfoParticipants.qml
|
||||
|
|
|
|||
|
|
@ -68,9 +68,8 @@ ColumnLayout {
|
|||
Layout.fillHeight: true
|
||||
// Layout.preferredHeight: contentHeight
|
||||
chatMessageGui: mainItem.chatMessageGui
|
||||
// onIsHoveringFileChanged: mainItem.isHoveringFile = isHoveringFile
|
||||
onIsHoveringFileChanged: mainItem.isFileHoveringChanged(isHoveringFile)
|
||||
// borderWidth: mainItem.fileBorderWidth
|
||||
// borderWidth: mainItem.fileBorderWidth
|
||||
// property int availableSection: mainItem.availableWidth / mainItem.filesBestWidth
|
||||
// property int bestFitSection: mainItem.bestWidth / mainItem.filesBestWidth
|
||||
// columns: Math.max(1, Math.min(availableSection , bestFitSection))
|
||||
|
|
|
|||
|
|
@ -28,6 +28,8 @@ Item {
|
|||
property bool isThumbnail: isVideo || isImage || isPdf
|
||||
property int overriddenWidth
|
||||
property int overriddenHeight
|
||||
// property to change default view display
|
||||
property bool showAsSquare: true
|
||||
|
||||
Connections {
|
||||
enabled: contentGui
|
||||
|
|
@ -116,6 +118,7 @@ Item {
|
|||
anchors.fill: parent
|
||||
Image {
|
||||
anchors.fill: parent
|
||||
z: parent.z + 1
|
||||
visible: parent.status !== Image.Ready
|
||||
source: AppIcons.fileImage
|
||||
sourceSize.width: mainItem.width
|
||||
|
|
@ -187,101 +190,177 @@ Item {
|
|||
// ---------------------------------------------------------------------
|
||||
Component {
|
||||
id: defaultFileView
|
||||
|
||||
Control.Control {
|
||||
id: defaultView
|
||||
leftPadding: Math.round(4 * DefaultStyle.dp)
|
||||
rightPadding: Math.round(4 * DefaultStyle.dp)
|
||||
topPadding: Math.round(23 * DefaultStyle.dp)
|
||||
bottomPadding: Math.round(4 * DefaultStyle.dp)
|
||||
hoverEnabled: false
|
||||
|
||||
background: Rectangle {
|
||||
anchors.fill: parent
|
||||
color: FileViewStyle.extension.background.color
|
||||
radius: FileViewStyle.extension.radius
|
||||
|
||||
Rectangle {
|
||||
color: DefaultStyle.main2_200
|
||||
anchors.top: parent.top
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
height: Math.round(23 * DefaultStyle.dp)
|
||||
EffectImage {
|
||||
anchors.centerIn: parent
|
||||
imageSource: contentGui
|
||||
? UtilsCpp.isImage(mainItem.filePath)
|
||||
? AppIcons.fileImage
|
||||
: UtilsCpp.isPdf(mainItem.filePath)
|
||||
? AppIcons.filePdf
|
||||
: UtilsCpp.isText(mainItem.filePath)
|
||||
? AppIcons.fileText
|
||||
: AppIcons.file
|
||||
: ''
|
||||
imageWidth: Math.round(14 * DefaultStyle.dp)
|
||||
imageHeight: Math.round(14 * DefaultStyle.dp)
|
||||
colorizationColor: DefaultStyle.main2_600
|
||||
Control.StackView {
|
||||
id: defaultViewStack
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
initialItem: mainItem.showAsSquare ? defaultSquareView : defaultView
|
||||
Connections {
|
||||
target: mainItem
|
||||
function onShowAsSquareChanged() {
|
||||
if (mainItem.showAsSquare) defaultViewStack.replace(defaultSquareView)
|
||||
else defaultViewStack.replace(defaultView)
|
||||
}
|
||||
}
|
||||
property var imageSource: mainItem.contentGui
|
||||
? UtilsCpp.isImage(mainItem.filePath)
|
||||
? AppIcons.fileImage
|
||||
: UtilsCpp.isPdf(mainItem.filePath)
|
||||
? AppIcons.filePdf
|
||||
: UtilsCpp.isText(mainItem.filePath)
|
||||
? AppIcons.fileText
|
||||
: AppIcons.file
|
||||
: ''
|
||||
|
||||
Component {
|
||||
id: defaultSquareView
|
||||
Control.Control {
|
||||
leftPadding: Math.round(4 * DefaultStyle.dp)
|
||||
rightPadding: Math.round(4 * DefaultStyle.dp)
|
||||
topPadding: Math.round(23 * DefaultStyle.dp)
|
||||
bottomPadding: Math.round(4 * DefaultStyle.dp)
|
||||
hoverEnabled: false
|
||||
|
||||
background: Rectangle {
|
||||
anchors.fill: parent
|
||||
color: FileViewStyle.extension.background.color
|
||||
radius: FileViewStyle.extension.radius
|
||||
|
||||
Rectangle {
|
||||
color: DefaultStyle.main2_200
|
||||
anchors.top: parent.top
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
height: Math.round(23 * DefaultStyle.dp)
|
||||
EffectImage {
|
||||
anchors.centerIn: parent
|
||||
imageSource: defaultViewStack.imageSource
|
||||
imageWidth: Math.round(14 * DefaultStyle.dp)
|
||||
imageHeight: Math.round(14 * DefaultStyle.dp)
|
||||
colorizationColor: DefaultStyle.main2_600
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
contentItem: Item {
|
||||
Text {
|
||||
id: fileName
|
||||
visible: !progressBar.visible
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
// visible: mainItem.contentGui && !mainItem.isAnimatedImage
|
||||
font.pixelSize: Typography.f1.pixelSize
|
||||
font.weight: Typography.f1l.weight
|
||||
wrapMode: Text.WrapAnywhere
|
||||
maximumLineCount: 2
|
||||
text: mainItem.name
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
}
|
||||
Text {
|
||||
id: fileSizeText
|
||||
visible: !progressBar.visible
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.right: parent.right
|
||||
text: Utils.formatSize(mainItem.fileSize)
|
||||
font.pixelSize: Typography.f1l.pixelSize
|
||||
font.weight: Typography.f1l.weight
|
||||
}
|
||||
RoundProgressBar {
|
||||
id: progressBar
|
||||
anchors.centerIn: parent
|
||||
to: 100
|
||||
value: mainItem.contentGui ? (mainItem.fileSize>0 ? Math.floor(100 * mainItem.contentGui.core.fileOffset / mainItem.fileSize) : 0) : to
|
||||
visible: mainItem.isTransferring && value != 0
|
||||
/* Change format? Current is %
|
||||
text: if(mainRow.contentGui){
|
||||
var mainItem.fileSize = Utils.formatSize(mainRow.contentGui.core.mainItem.fileSize)
|
||||
return progressBar.visible
|
||||
? Utils.formatSize(mainRow.contentGui.core.fileOffset) + '/' + mainItem.fileSize
|
||||
: mainItem.fileSize
|
||||
}else
|
||||
return ''
|
||||
*/
|
||||
}
|
||||
Rectangle {
|
||||
visible: thumbnailProvider.state === 'hovered' && mainItem.contentGui && (/*!mainItem.isOutgoing &&*/ !mainItem.contentGui.core.wasDownloaded)
|
||||
color: DefaultStyle.grey_0
|
||||
opacity: 0.5
|
||||
anchors.fill: parent
|
||||
}
|
||||
EffectImage {
|
||||
visible: thumbnailProvider.state === 'hovered' && mainItem.contentGui && (/*!mainItem.isOutgoing &&*/ !mainItem.contentGui.core.wasDownloaded)
|
||||
anchors.centerIn: parent
|
||||
imageSource: AppIcons.download
|
||||
width: Math.round(24 * DefaultStyle.dp)
|
||||
height: Math.round(24 * DefaultStyle.dp)
|
||||
colorizationColor: DefaultStyle.main2_600
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
contentItem: Item {
|
||||
Text {
|
||||
id: fileName
|
||||
visible: !progressBar.visible
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
// visible: mainItem.contentGui && !mainItem.isAnimatedImage
|
||||
font.pixelSize: Typography.f1.pixelSize
|
||||
font.weight: Typography.f1l.weight
|
||||
wrapMode: Text.WrapAnywhere
|
||||
maximumLineCount: 2
|
||||
text: mainItem.name
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
}
|
||||
Text {
|
||||
id: fileSizeText
|
||||
visible: !progressBar.visible
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.right: parent.right
|
||||
text: Utils.formatSize(mainItem.fileSize)
|
||||
font.pixelSize: Typography.f1l.pixelSize
|
||||
font.weight: Typography.f1l.weight
|
||||
}
|
||||
RoundProgressBar {
|
||||
id: progressBar
|
||||
anchors.centerIn: parent
|
||||
to: 100
|
||||
value: mainItem.contentGui ? (mainItem.fileSize>0 ? Math.floor(100 * mainItem.contentGui.core.fileOffset / mainItem.fileSize) : 0) : to
|
||||
visible: mainItem.isTransferring && value != 0
|
||||
/* Change format? Current is %
|
||||
text: if(mainRow.contentGui){
|
||||
var mainItem.fileSize = Utils.formatSize(mainRow.contentGui.core.mainItem.fileSize)
|
||||
return progressBar.visible
|
||||
? Utils.formatSize(mainRow.contentGui.core.fileOffset) + '/' + mainItem.fileSize
|
||||
: mainItem.fileSize
|
||||
}else
|
||||
return ''
|
||||
*/
|
||||
}
|
||||
Rectangle {
|
||||
visible: thumbnailProvider.state === 'hovered' && mainItem.contentGui && (/*!mainItem.isOutgoing &&*/ !mainItem.contentGui.core.wasDownloaded)
|
||||
color: DefaultStyle.grey_0
|
||||
opacity: 0.5
|
||||
anchors.fill: parent
|
||||
}
|
||||
EffectImage {
|
||||
visible: thumbnailProvider.state === 'hovered' && mainItem.contentGui && (/*!mainItem.isOutgoing &&*/ !mainItem.contentGui.core.wasDownloaded)
|
||||
anchors.centerIn: parent
|
||||
imageSource: AppIcons.download
|
||||
width: Math.round(24 * DefaultStyle.dp)
|
||||
height: Math.round(24 * DefaultStyle.dp)
|
||||
colorizationColor: DefaultStyle.main2_600
|
||||
Component {
|
||||
id: defaultView
|
||||
Control.Control {
|
||||
rightPadding: Math.round(17*DefaultStyle.dp)
|
||||
|
||||
background: Rectangle {
|
||||
id: bg
|
||||
color: DefaultStyle.grey_100
|
||||
width: mainItem.width
|
||||
height: mainItem.height
|
||||
radius: Math.round(10 * DefaultStyle.dp)
|
||||
}
|
||||
contentItem: RowLayout {
|
||||
spacing: Math.round(16 * DefaultStyle.dp)
|
||||
Rectangle {
|
||||
color: DefaultStyle.main2_200
|
||||
width: Math.round(58 * DefaultStyle.dp)
|
||||
height: bg.height
|
||||
radius: bg.radius
|
||||
Rectangle {
|
||||
anchors.right: parent.right
|
||||
color: DefaultStyle.main2_200
|
||||
width: parent.width / 2
|
||||
height: parent.height
|
||||
radius: parent.radius
|
||||
|
||||
}
|
||||
EffectImage {
|
||||
z: parent.z + 1
|
||||
anchors.centerIn: parent
|
||||
imageSource: defaultViewStack.imageSource
|
||||
width: Math.round(22 * DefaultStyle.dp)
|
||||
height: width
|
||||
colorizationColor: DefaultStyle.main2_600
|
||||
}
|
||||
}
|
||||
ColumnLayout {
|
||||
spacing: Math.round(1 * DefaultStyle.dp)
|
||||
Text {
|
||||
text: mainItem.name
|
||||
Layout.fillWidth: true
|
||||
font {
|
||||
pixelSize: Typography.p2.pixelSize
|
||||
weight: Typography.p2.weight
|
||||
}
|
||||
}
|
||||
Text {
|
||||
text: mainItem.fileSize
|
||||
Layout.fillWidth: true
|
||||
font {
|
||||
pixelSize: Typography.p4.pixelSize
|
||||
weight: Typography.p4.weight
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loader {
|
||||
|
|
|
|||
|
|
@ -67,7 +67,6 @@ Control.Control {
|
|||
contentItem: Control.StackView {
|
||||
id: sendingAreaStackView
|
||||
initialItem: textAreaComp
|
||||
width: currentItem.width
|
||||
onHeightChanged: {
|
||||
mainItem.height = height + mainItem.topPadding + mainItem.bottomPadding
|
||||
}
|
||||
|
|
|
|||
|
|
@ -434,6 +434,8 @@ RowLayout {
|
|||
contentItem: Loader {
|
||||
id: contentLoader
|
||||
property bool showingMessageReactions: false
|
||||
property bool showingSharedFiles: false
|
||||
property bool showingMedias: false
|
||||
property bool showingImdnStatus: false
|
||||
property bool showingManageParticipants: false
|
||||
property bool showingEphemeralSettings: false
|
||||
|
|
@ -445,11 +447,13 @@ RowLayout {
|
|||
? messageReactionsComponent
|
||||
: showingImdnStatus
|
||||
? messageImdnStatusComponent
|
||||
: showingManageParticipants
|
||||
? manageParticipantsComponent
|
||||
: mainItem.chat.core.isGroupChat
|
||||
? groupInfoComponent
|
||||
: oneToOneInfoComponent
|
||||
: showingSharedFiles
|
||||
? sharedFilesComponent
|
||||
: showingManageParticipants
|
||||
? manageParticipantsComponent
|
||||
: mainItem.chat.core.isGroupChat
|
||||
? groupInfoComponent
|
||||
: oneToOneInfoComponent
|
||||
active: detailsPanel.visible
|
||||
onLoaded: {
|
||||
if (contentLoader.item && contentLoader.item.parentView) {
|
||||
|
|
@ -463,6 +467,10 @@ RowLayout {
|
|||
OneOneConversationInfos {
|
||||
chatGui: mainItem.chat
|
||||
onEphemeralSettingsRequested: contentLoader.showingEphemeralSettings = true
|
||||
onShowSharedFilesRequested: (showMedias) => {
|
||||
contentLoader.showingSharedFiles = true
|
||||
contentLoader.showingMedias = showMedias
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -471,6 +479,10 @@ RowLayout {
|
|||
GroupConversationInfos {
|
||||
chatGui: mainItem.chat
|
||||
onManageParticipantsRequested: contentLoader.showingManageParticipants = true
|
||||
onShowSharedFilesRequested: (showMedias) => {
|
||||
contentLoader.showingSharedFiles = true
|
||||
contentLoader.showingMedias = showMedias
|
||||
}
|
||||
onEphemeralSettingsRequested: contentLoader.showingEphemeralSettings = true
|
||||
}
|
||||
}
|
||||
|
|
@ -495,6 +507,23 @@ RowLayout {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component {
|
||||
id: sharedFilesComponent
|
||||
MessageSharedFilesInfos {
|
||||
chatGui: mainItem.chat
|
||||
title: contentLoader.showingMedias
|
||||
//: Shared medias
|
||||
? qsTr("shared_medias_title")
|
||||
//: Shared documents
|
||||
: qsTr("shared_documents_title")
|
||||
filter: contentLoader.showingMedias ? ChatMessageFileProxy.FilterContentType.Medias : ChatMessageFileProxy.FilterContentType.Documents
|
||||
onGoBackRequested: {
|
||||
// detailsPanel.visible = false
|
||||
contentLoader.showingSharedFiles = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component {
|
||||
id: manageParticipantsComponent
|
||||
|
|
|
|||
|
|
@ -21,14 +21,25 @@ ColumnLayout {
|
|||
return chatCore && chatCore.meAdmin && !chatCore.isReadOnly
|
||||
}
|
||||
|
||||
Text {
|
||||
font: Typography.h4
|
||||
color: DefaultStyle.main2_600
|
||||
text: title
|
||||
Layout.topMargin: Math.round(5 * DefaultStyle.dp)
|
||||
}
|
||||
RowLayout {
|
||||
Text {
|
||||
font: Typography.h4
|
||||
color: DefaultStyle.main2_600
|
||||
text: title
|
||||
Layout.topMargin: Math.round(5 * DefaultStyle.dp)
|
||||
}
|
||||
Item{Layout.fillWidth: true}
|
||||
BigButton {
|
||||
id: expandButton
|
||||
style: ButtonStyle.noBackground
|
||||
checkable: true
|
||||
checked: true
|
||||
icon.source: checked ? AppIcons.upArrow : AppIcons.downArrow
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
visible: expandButton.checked
|
||||
Layout.fillWidth: true
|
||||
Layout.topMargin: Math.round(9 * DefaultStyle.dp)
|
||||
color: DefaultStyle.grey_100
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ ColumnLayout {
|
|||
property bool manageParticipants: false
|
||||
signal manageParticipantsRequested()
|
||||
signal ephemeralSettingsRequested()
|
||||
signal showSharedFilesRequested(bool showMedias)
|
||||
|
||||
spacing: 0
|
||||
|
||||
|
|
@ -201,26 +202,29 @@ ColumnLayout {
|
|||
|
||||
ChatInfoActionsGroup {
|
||||
Layout.topMargin: Math.round(30 * DefaultStyle.dp)
|
||||
//: Medias & documents
|
||||
title: qsTr("group_infos_media_docs")
|
||||
entries: [
|
||||
{
|
||||
icon: AppIcons.photo,
|
||||
visible: true,
|
||||
text: qsTr("group_infos_media_docs"),
|
||||
//: Shared medias
|
||||
text: qsTr("group_infos_shared_medias"),
|
||||
color: DefaultStyle.main2_600,
|
||||
showRightArrow: true,
|
||||
action: function() {
|
||||
console.log("group_infos_shared_media")
|
||||
mainItem.showSharedFilesRequested(true)
|
||||
}
|
||||
},
|
||||
{
|
||||
icon: AppIcons.pdf,
|
||||
visible: true,
|
||||
//: Shared documents
|
||||
text: qsTr("group_infos_shared_docs"),
|
||||
color: DefaultStyle.main2_600,
|
||||
showRightArrow: true,
|
||||
action: function() {
|
||||
console.log("Opening shared documents")
|
||||
mainItem.showSharedFilesRequested(false)
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ ColumnLayout {
|
|||
property alias tabbar: tabbar
|
||||
property alias listView: listView
|
||||
property var parentView
|
||||
property alias content: contentLayout.children
|
||||
|
||||
spacing: Math.round(25 * DefaultStyle.dp)
|
||||
|
||||
|
|
@ -41,6 +42,7 @@ ColumnLayout {
|
|||
}
|
||||
|
||||
ColumnLayout {
|
||||
id: contentLayout
|
||||
spacing: Math.round(21 * DefaultStyle.dp)
|
||||
Layout.leftMargin: Math.round(16 * DefaultStyle.dp)
|
||||
Layout.rightMargin: Math.round(16 * DefaultStyle.dp)
|
||||
|
|
|
|||
35
Linphone/view/Page/Layout/Chat/MessageSharedFilesInfos.qml
Normal file
35
Linphone/view/Page/Layout/Chat/MessageSharedFilesInfos.qml
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
import QtCore
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import Linphone
|
||||
import UtilsCpp
|
||||
|
||||
MessageInfosLayout {
|
||||
id: mainItem
|
||||
spacing: Math.round(25 * DefaultStyle.dp)
|
||||
property ChatGui chatGui
|
||||
property int filter
|
||||
tabbar.visible: false
|
||||
|
||||
content: [
|
||||
GridView {
|
||||
id: gridView
|
||||
Layout.fillWidth: true
|
||||
Layout.fillHeight: true
|
||||
Layout.preferredHeight: contentHeight
|
||||
cellWidth: mainItem.filter === ChatMessageFileProxy.FilterContentType.Documents ? width : width / 4
|
||||
cellHeight: mainItem.filter === ChatMessageFileProxy.FilterContentType.Documents ? Math.round(69 * DefaultStyle.dp) : width / 4
|
||||
model: ChatMessageFileProxy {
|
||||
chat: mainItem.chatGui
|
||||
filterType: mainItem.filter
|
||||
}
|
||||
delegate: FileView {
|
||||
contentGui: modelData
|
||||
showAsSquare: false
|
||||
width: gridView.cellWidth - Math.round(2 * DefaultStyle.dp)
|
||||
height: gridView.cellHeight - Math.round(2 * DefaultStyle.dp)
|
||||
}
|
||||
},
|
||||
Item{Layout.fillHeight: true}
|
||||
]
|
||||
}
|
||||
|
|
@ -17,6 +17,7 @@ ColumnLayout {
|
|||
property var parentView
|
||||
spacing: 0
|
||||
signal ephemeralSettingsRequested()
|
||||
signal showSharedFilesRequested()
|
||||
|
||||
|
||||
Avatar {
|
||||
|
|
@ -119,7 +120,7 @@ ColumnLayout {
|
|||
color: DefaultStyle.main2_600,
|
||||
showRightArrow: true,
|
||||
action: function() {
|
||||
console.log("Opening shared media")
|
||||
mainItem.showSharedFilesRequested(true)
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -129,7 +130,7 @@ ColumnLayout {
|
|||
color: DefaultStyle.main2_600,
|
||||
showRightArrow: true,
|
||||
action: function() {
|
||||
console.log("Opening shared documents")
|
||||
mainItem.showSharedFilesRequested(false)
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -113,7 +113,7 @@ AbstractMainPage {
|
|||
height: Math.round(24 * DefaultStyle.dp)
|
||||
focus: true
|
||||
popup.x: 0
|
||||
KeyNavigation.right: newCallButton
|
||||
KeyNavigation.right: newChatButton
|
||||
KeyNavigation.down: listStackView
|
||||
popup.contentItem: ColumnLayout {
|
||||
IconLabelButton {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue