diff --git a/linphone-app/assets/languages/da.ts b/linphone-app/assets/languages/da.ts
index e3a96b37a..61eb0937e 100644
--- a/linphone-app/assets/languages/da.ts
+++ b/linphone-app/assets/languages/da.ts
@@ -2956,6 +2956,21 @@ Klik her: <a href="%1">%1</a>
"invalid conference URI" : Error text about conference URI
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/de.ts b/linphone-app/assets/languages/de.ts
index 844e7c198..e441e4d0a 100644
--- a/linphone-app/assets/languages/de.ts
+++ b/linphone-app/assets/languages/de.ts
@@ -2956,6 +2956,21 @@ Klicken Sie hier: <a href="%1">%1</a>
"invalid conference URI" : Error text about conference URI
Ungültige Konferenz-URI
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/en.ts b/linphone-app/assets/languages/en.ts
index dc5afd344..9f1a8c909 100644
--- a/linphone-app/assets/languages/en.ts
+++ b/linphone-app/assets/languages/en.ts
@@ -2979,6 +2979,21 @@ Click here: <a href="%1">%1</a>
"invalid conference URI" : Error text about conference URI
Invalid conference URI
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+ Video Conference URI
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+ E2E encryption keys server URL
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+ invalid E2E encryption keys server URL
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/es.ts b/linphone-app/assets/languages/es.ts
index 8b0fe63f2..6fe162165 100644
--- a/linphone-app/assets/languages/es.ts
+++ b/linphone-app/assets/languages/es.ts
@@ -2956,6 +2956,21 @@ Haga clic aquí: <a href="%1">%1 </a>
"invalid conference URI" : Error text about conference URI
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/fr_FR.ts b/linphone-app/assets/languages/fr_FR.ts
index 35119b129..e35e0a2eb 100644
--- a/linphone-app/assets/languages/fr_FR.ts
+++ b/linphone-app/assets/languages/fr_FR.ts
@@ -2956,6 +2956,21 @@ Cliquez ici : <a href="%1">%1</a>
"invalid conference URI" : Error text about conference URI
URI de conférence invalide
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/hu.ts b/linphone-app/assets/languages/hu.ts
index 04dfe70b3..b0f6ce1a6 100644
--- a/linphone-app/assets/languages/hu.ts
+++ b/linphone-app/assets/languages/hu.ts
@@ -2943,6 +2943,21 @@ Kattintson ide: <a href="%1">%1</a>
"invalid conference URI" : Error text about conference URI
Érvénytelen konferencia URI-cím
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/it.ts b/linphone-app/assets/languages/it.ts
index 4a6f2dcf6..d919beff8 100644
--- a/linphone-app/assets/languages/it.ts
+++ b/linphone-app/assets/languages/it.ts
@@ -2956,6 +2956,21 @@ Clicca: <a href="%1">%1</a>
"invalid conference URI" : Error text about conference URI
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/ja.ts b/linphone-app/assets/languages/ja.ts
index dffdaf34b..588fabbe1 100644
--- a/linphone-app/assets/languages/ja.ts
+++ b/linphone-app/assets/languages/ja.ts
@@ -2943,6 +2943,21 @@
"invalid conference URI" : Error text about conference URI
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/lt.ts b/linphone-app/assets/languages/lt.ts
index 83af8a769..509fad401 100644
--- a/linphone-app/assets/languages/lt.ts
+++ b/linphone-app/assets/languages/lt.ts
@@ -2969,6 +2969,21 @@ Spustelėkite čia: <a href="%1">%1</a>
"invalid conference URI" : Error text about conference URI
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/pt_BR.ts b/linphone-app/assets/languages/pt_BR.ts
index 018250531..b4181348f 100644
--- a/linphone-app/assets/languages/pt_BR.ts
+++ b/linphone-app/assets/languages/pt_BR.ts
@@ -2956,6 +2956,21 @@ Clique aqui: <a href="%1">%1 </a>
"invalid conference URI" : Error text about conference URI
URI de conferência inválido
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/ru.ts b/linphone-app/assets/languages/ru.ts
index 08d6685a1..31502f90d 100644
--- a/linphone-app/assets/languages/ru.ts
+++ b/linphone-app/assets/languages/ru.ts
@@ -2969,6 +2969,21 @@
"invalid conference URI" : Error text about conference URI
Недопустимый URI конференции
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/sv.ts b/linphone-app/assets/languages/sv.ts
index 9cb8d95f9..c55ee3782 100644
--- a/linphone-app/assets/languages/sv.ts
+++ b/linphone-app/assets/languages/sv.ts
@@ -2956,6 +2956,21 @@ Klicka här: <a href="%1">%1</a>
"invalid conference URI" : Error text about conference URI
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/tr.ts b/linphone-app/assets/languages/tr.ts
index 6e27182c9..3e893e4be 100644
--- a/linphone-app/assets/languages/tr.ts
+++ b/linphone-app/assets/languages/tr.ts
@@ -2943,6 +2943,21 @@ Buraya tıklayın: <a href="%1">%1</a>
"invalid conference URI" : Error text about conference URI
Geçersiz toplantı URI'si
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/uk.ts b/linphone-app/assets/languages/uk.ts
index 34b2a7ac4..e06428997 100644
--- a/linphone-app/assets/languages/uk.ts
+++ b/linphone-app/assets/languages/uk.ts
@@ -2969,6 +2969,21 @@
"invalid conference URI" : Error text about conference URI
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/assets/languages/zh_CN.ts b/linphone-app/assets/languages/zh_CN.ts
index a1b330e17..72923d84a 100644
--- a/linphone-app/assets/languages/zh_CN.ts
+++ b/linphone-app/assets/languages/zh_CN.ts
@@ -2943,6 +2943,21 @@
"invalid conference URI" : Error text about conference URI
无效的会议URI
+
+ videoConferenceURI
+ "Video Conference URI" : Label of a text edit for filling Video conference URI.
+
+
+
+ limeServerUrl
+ 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+
+
+
+ invalidLimeServerUrl
+ "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+
+
SettingsTunnel
diff --git a/linphone-app/src/components/core/CoreManager.cpp b/linphone-app/src/components/core/CoreManager.cpp
index 0f76659b8..9ca37a464 100644
--- a/linphone-app/src/components/core/CoreManager.cpp
+++ b/linphone-app/src/components/core/CoreManager.cpp
@@ -259,7 +259,7 @@ void CoreManager::createLinphoneCore (const QString &configPath) {
nullptr
);
// Enable LIME on your core to use encryption.
- mCore->enableLimeX3Dh(mCore->getLimeX3DhServerUrl() != "");
+ mCore->enableLimeX3Dh(mCore->limeX3DhAvailable());
// Now see the CoreService.CreateGroupChatRoom to see how to create a secure chat room
mCore->addListener(mHandlers);
@@ -294,8 +294,9 @@ void CoreManager::handleChatRoomCreated(const QSharedPointer &cha
void CoreManager::migrate () {
shared_ptr config = mCore->getConfig();
+ auto oldLimeServerUrl = mCore->getLimeX3DhServerUrl();// core url is deprecated : If core url exists, it must be copied to all linphone accounts.
int rcVersion = config->getInt(SettingsModel::UiSection, Constants::RcVersionName, 0);
- if (rcVersion == Constants::RcVersionCurrent)
+ if (oldLimeServerUrl.empty() && rcVersion == Constants::RcVersionCurrent)
return;
if (rcVersion > Constants::RcVersionCurrent) {
qWarning() << QStringLiteral("RC file version (%1) is more recent than app rc file version (%2)!!!")
@@ -306,7 +307,7 @@ void CoreManager::migrate () {
qInfo() << QStringLiteral("Migrate from old rc file (%1 to %2).")
.arg(rcVersion).arg(Constants::RcVersionCurrent);
- bool setlimeServerUrl = false;
+ bool setLimeServerUrl = false;
for(const auto &account : getAccountList()){
auto params = account->getParams();
if( params->getDomain() == Constants::LinphoneDomain) {
@@ -319,7 +320,7 @@ void CoreManager::migrate () {
}
if( rcVersion < 2) {
bool exists = newParams->getConferenceFactoryUri() != "";
- setlimeServerUrl = true;
+ setLimeServerUrl = true;
if(!exists )
newParams->setConferenceFactoryUri(Constants::DefaultConferenceURI);
qInfo() << "Migrating" << accountIdentity << "for version 2. Conference factory URI" << (exists ? std::string("unchanged") : std::string("= ") +Constants::DefaultConferenceURI).c_str();
@@ -335,17 +336,25 @@ void CoreManager::migrate () {
}
if( rcVersion < 5) {
bool exists = !!newParams->getAudioVideoConferenceFactoryAddress();
- setlimeServerUrl = true;
+ setLimeServerUrl = true;
if( !exists)
newParams->setAudioVideoConferenceFactoryAddress(Utils::interpretUrl(Constants::DefaultVideoConferenceURI));
qInfo() << "Migrating" << accountIdentity << "for version 5. Video conference factory URI" << (exists ? std::string("unchanged") : std::string("= ") +Constants::DefaultVideoConferenceURI).c_str();
// note: using std::string.c_str() to avoid having double quotes in qInfo()
}
+
+ if(!oldLimeServerUrl.empty())
+ newParams->setLimeServerUrl(oldLimeServerUrl);
+ else if( setLimeServerUrl)
+ newParams->setLimeServerUrl(Constants::DefaultLimeServerURL);
+
account->setParams(newParams);
}
}
- if(setlimeServerUrl) {
- mCore->setLimeX3DhServerUrl(Constants::DefaultLimeServerURL);
+ if( !oldLimeServerUrl.empty()) {
+ mCore->setLimeX3DhServerUrl("");
+ mCore->enableLimeX3Dh(true);
+ }else if(setLimeServerUrl) {
mCore->enableLimeX3Dh(true);
}
diff --git a/linphone-app/src/components/settings/AccountSettingsModel.cpp b/linphone-app/src/components/settings/AccountSettingsModel.cpp
index ead72bd65..a108f9080 100644
--- a/linphone-app/src/components/settings/AccountSettingsModel.cpp
+++ b/linphone-app/src/components/settings/AccountSettingsModel.cpp
@@ -68,8 +68,9 @@ AccountSettingsModel::AccountSettingsModel (QObject *parent) : QObject(parent) {
QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::sipAddressChanged);
QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::fullSipAddressChanged);
QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::registrationStateChanged);
- QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::conferenceURIChanged);
- QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::videoConferenceURIChanged);
+ QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::conferenceUriChanged);
+ QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::videoConferenceUriChanged);
+ QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::limeServerUrlChanged);
QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::primaryDisplayNameChanged);
QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::primaryUsernameChanged);
QObject::connect(this, &AccountSettingsModel::accountSettingsUpdated, this, &AccountSettingsModel::primarySipAddressChanged);
@@ -160,6 +161,8 @@ QVariantMap AccountSettingsModel::getAccountDescription (const shared_ptrgetConferenceFactoryUri());
auto address = accountParams->getAudioVideoConferenceFactoryAddress();
map["videoConferenceUri"] = address ? Utils::coreStringToAppString(address->asString()) : "";
+ map["limeServerUrl"] = Utils::coreStringToAppString(accountParams->getLimeServerUrl());
+ map["videoConferenceUri"] = address ? Utils::coreStringToAppString(address->asString()) : "";
map["contactParams"] = Utils::coreStringToAppString(accountParams->getContactParameters());
map["avpfInterval"] = accountParams->getAvpfRrInterval();
map["registerEnabled"] = accountParams->registerEnabled();
@@ -194,13 +197,13 @@ QVariantMap AccountSettingsModel::getAccountDescription (const shared_ptr core = CoreManager::getInstance()->getCore();
shared_ptr account = core->getDefaultAccount();
return account ? Utils::coreStringToAppString(account->getParams()->getConferenceFactoryUri()) : "";
}
-QString AccountSettingsModel::getVideoConferenceURI() const{
+QString AccountSettingsModel::getVideoConferenceUri() const{
shared_ptr core = CoreManager::getInstance()->getCore();
shared_ptr account = core->getDefaultAccount();
if(account) {
@@ -210,6 +213,11 @@ QString AccountSettingsModel::getVideoConferenceURI() const{
return "";
}
+QString AccountSettingsModel::getLimeServerUrl() const{
+ shared_ptr core = CoreManager::getInstance()->getCore();
+ shared_ptr account = core->getDefaultAccount();
+ return account ? Utils::coreStringToAppString(account->getParams()->getLimeServerUrl()) : "";
+}
void AccountSettingsModel::setDefaultAccount (const shared_ptr &account) {
shared_ptr core = CoreManager::getInstance()->getCore();
@@ -320,6 +328,7 @@ bool AccountSettingsModel::addOrUpdateAccount(
accountParams->setConferenceFactoryUri(Utils::appStringToCoreString(txt));
txt = data["videoConferenceUri"].toString();
accountParams->setAudioVideoConferenceFactoryAddress(Utils::interpretUrl(txt));
+ accountParams->setLimeServerUrl(Utils::appStringToCoreString(data["limeServerUrl"].toString()));
if(data.contains("contactParams"))
accountParams->setContactParameters(Utils::appStringToCoreString(data["contactParams"].toString()));
diff --git a/linphone-app/src/components/settings/AccountSettingsModel.hpp b/linphone-app/src/components/settings/AccountSettingsModel.hpp
index 778990392..23d6ef92f 100644
--- a/linphone-app/src/components/settings/AccountSettingsModel.hpp
+++ b/linphone-app/src/components/settings/AccountSettingsModel.hpp
@@ -39,8 +39,9 @@ class AccountSettingsModel : public QObject {
Q_PROPERTY(QString fullSipAddress READ getUsedSipAddressAsString NOTIFY fullSipAddressChanged)
Q_PROPERTY(RegistrationState registrationState READ getRegistrationState NOTIFY registrationStateChanged)
- Q_PROPERTY(QString conferenceURI READ getConferenceURI NOTIFY conferenceURIChanged)
- Q_PROPERTY(QString videoConferenceURI READ getVideoConferenceURI NOTIFY videoConferenceURIChanged)
+ Q_PROPERTY(QString conferenceUri READ getConferenceUri NOTIFY conferenceUriChanged)
+ Q_PROPERTY(QString videoConferenceUri READ getVideoConferenceUri NOTIFY videoConferenceUriChanged)
+ Q_PROPERTY(QString limeServerUrl READ getLimeServerUrl NOTIFY limeServerUrlChanged)
// Default info.
Q_PROPERTY(QString primaryDisplayName READ getPrimaryDisplayName WRITE setPrimaryDisplayName NOTIFY primaryDisplayNameChanged)
@@ -70,8 +71,9 @@ public:
bool addOrUpdateAccount (std::shared_ptr account, const std::shared_ptr& accountParams);
Q_INVOKABLE QVariantMap getAccountDescription (const std::shared_ptr &account);
- QString getConferenceURI() const;
- QString getVideoConferenceURI() const;
+ QString getConferenceUri() const;
+ QString getVideoConferenceUri() const;
+ QString getLimeServerUrl() const;
Q_INVOKABLE void setDefaultAccount (const std::shared_ptr &account = nullptr);
Q_INVOKABLE void setDefaultAccountFromSipAddress (const QString &sipAddress);
@@ -96,8 +98,9 @@ signals:
void sipAddressChanged();
void fullSipAddressChanged();
void registrationStateChanged();
- void conferenceURIChanged();
- void videoConferenceURIChanged();
+ void conferenceUriChanged();
+ void videoConferenceUriChanged();
+ void limeServerUrlChanged();
void primaryDisplayNameChanged();
void primaryUsernameChanged();
diff --git a/linphone-app/src/components/settings/SettingsModel.cpp b/linphone-app/src/components/settings/SettingsModel.cpp
index eba0e30a1..041b30671 100644
--- a/linphone-app/src/components/settings/SettingsModel.cpp
+++ b/linphone-app/src/components/settings/SettingsModel.cpp
@@ -823,7 +823,10 @@ void SettingsModel::setStandardChatEnabled (bool status) {
bool SettingsModel::getSecureChatEnabled () const {
return !!mConfig->getInt(UiSection, getEntryFullName(UiSection, "secure_chat_enabled"), 1)
- && !CoreManager::getInstance()->getCore()->getLimeX3DhServerUrl().empty() && getGroupChatEnabled();
+ && getLimeIsSupported()
+ && CoreManager::getInstance()->getCore()->getDefaultAccount() && !CoreManager::getInstance()->getCore()->getDefaultAccount()->getParams()->getLimeServerUrl().empty()
+ //&& !CoreManager::getInstance()->getCore()->getLimeX3DhServerUrl().empty()
+ && getGroupChatEnabled();
;
}
diff --git a/linphone-app/ui/modules/Linphone/SmartSearchBar/SmartSearchBar.qml b/linphone-app/ui/modules/Linphone/SmartSearchBar/SmartSearchBar.qml
index d6f036745..94daa624c 100644
--- a/linphone-app/ui/modules/Linphone/SmartSearchBar/SmartSearchBar.qml
+++ b/linphone-app/ui/modules/Linphone/SmartSearchBar/SmartSearchBar.qml
@@ -92,7 +92,7 @@ SearchBox {
}, {
colorSet: SettingsModel.getShowStartChatButton() ? SipAddressesViewStyle.chat : SipAddressesViewStyle.history,
secure: 1,
- visible: SettingsModel.secureChatEnabled && AccountSettingsModel.conferenceURI != '',
+ visible: SettingsModel.secureChatEnabled && AccountSettingsModel.conferenceUri != '',
handler: function (entry) {
searchBox.closeMenu()
searchBox.launchSecureChat(entry.sipAddress)
diff --git a/linphone-app/ui/views/App/Dialog/NewConference.qml b/linphone-app/ui/views/App/Dialog/NewConference.qml
index 95f8d5919..4d4bc0235 100644
--- a/linphone-app/ui/views/App/Dialog/NewConference.qml
+++ b/linphone-app/ui/views/App/Dialog/NewConference.qml
@@ -106,7 +106,7 @@ DialogPlus {
onClicked: exit(0)
},
TextButtonB {
- enabled: conferenceManager.creationState != 1 && selectedParticipants.count >= conferenceManager.minParticipants && subject.text != '' && AccountSettingsModel.conferenceURI != ''
+ enabled: conferenceManager.creationState != 1 && selectedParticipants.count >= conferenceManager.minParticipants && subject.text != '' && AccountSettingsModel.conferenceUri != ''
//: 'Launch' : Launch button
text: conferenceManager.isNew ? qsTr('launchButton')
//: 'Update' : Update button
@@ -142,7 +142,7 @@ DialogPlus {
conferenceInfoModel.createConference(false && secureSwitch.checked) // TODO remove false when Encryption is ready to use
}
TooltipArea{
- visible: AccountSettingsModel.conferenceURI == '' || subject.text == '' || selectedParticipants.count < conferenceManager.minParticipants
+ visible: AccountSettingsModel.conferenceUri == '' || subject.text == '' || selectedParticipants.count < conferenceManager.minParticipants
maxWidth: participantView.width
delay:0
text: {
@@ -153,7 +153,7 @@ DialogPlus {
if( selectedParticipants.count < conferenceManager.minParticipants)
//: 'You need at least %1 participant.' : Tooltip to warn a user that there are not enough participants for the conference creation.
txt += '- ' + qsTr('missingParticipants', '', conferenceManager.minParticipants).arg(conferenceManager.minParticipants) + '\n'
- if( AccountSettingsModel.conferenceURI == '')
+ if( AccountSettingsModel.conferenceUri == '')
//: 'You need to set the conference URI in your account settings to create a conference based chat room.' : Tooltip to warn the user that a setting is missing in its configuration.
txt += '- ' + qsTr('missingConferenceURI') + '\n'
return txt;
diff --git a/linphone-app/ui/views/App/Main/ContactEdit.qml b/linphone-app/ui/views/App/Main/ContactEdit.qml
index 83c6d2827..e16987322 100644
--- a/linphone-app/ui/views/App/Main/ContactEdit.qml
+++ b/linphone-app/ui/views/App/Main/ContactEdit.qml
@@ -189,7 +189,7 @@ ColumnLayout {
backgroundRadius: 90
colorSet: SettingsModel.getShowStartChatButton() ? ContactEditStyle.chat : ContactEditStyle.history
visible: SettingsModel.secureChatEnabled
- enabled: AccountSettingsModel.conferenceURI != ''
+ enabled: AccountSettingsModel.conferenceUri != ''
Icon{
icon:'secure_level_1'
iconSize:parent.height/2
@@ -199,7 +199,7 @@ ColumnLayout {
onClicked: {sipAddressesMenu.open(sipAddressesMenu.createSecureChatRoom)}
tooltipMaxWidth: actionBar.width
- tooltipVisible: AccountSettingsModel.conferenceURI == ''
+ tooltipVisible: AccountSettingsModel.conferenceUri == ''
//: 'You need to set the conference URI in your account settings to create a conference based chat room.' : Tooltip to warn the user that a setting is missing in its configuration.
tooltipText: '- ' + qsTr('missingConferenceURI') + '\n'
}
diff --git a/linphone-app/ui/views/App/Main/Contacts.qml b/linphone-app/ui/views/App/Main/Contacts.qml
index 356831065..aa16fa0a0 100644
--- a/linphone-app/ui/views/App/Main/Contacts.qml
+++ b/linphone-app/ui/views/App/Main/Contacts.qml
@@ -166,7 +166,7 @@ ColumnLayout {
backgroundRadius: 90
colorSet: SettingsModel.getShowStartChatButton() ? ContactsStyle.chat : ContactsStyle.history
visible: SettingsModel.secureChatEnabled
- enabled: AccountSettingsModel.conferenceURI != ''
+ enabled: AccountSettingsModel.conferenceUri != ''
Icon{
icon:'secure_level_1'
iconSize:parent.height/2
@@ -175,7 +175,7 @@ ColumnLayout {
}
onClicked: {actions.itemAt(3).open()}
tooltipMaxWidth: actionBar.width
- tooltipVisible: AccountSettingsModel.conferenceURI == ''
+ tooltipVisible: AccountSettingsModel.conferenceUri == ''
//: 'You need to set the conference URI in your account settings to create a conference based chat room.' : Tooltip to warn the user that a setting is missing in its configuration.
tooltipText: '- ' + qsTr('missingConferenceURI') + '\n'
}
diff --git a/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml b/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml
index af8e5c3d1..20b07f4fb 100644
--- a/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml
+++ b/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml
@@ -28,7 +28,7 @@ DialogPlus {
onClicked: exit(0)
},
TextButtonB {
- enabled: selectedParticipants.count >= conferenceManager.minParticipants && subject.text != '' && AccountSettingsModel.conferenceURI != ''
+ enabled: selectedParticipants.count >= conferenceManager.minParticipants && subject.text != '' && AccountSettingsModel.conferenceUri != ''
//: 'Launch' : Start button
text: qsTr('startButton')
capitalization: Font.AllUppercase
@@ -38,7 +38,7 @@ DialogPlus {
exit(1)
}
TooltipArea{
- visible: AccountSettingsModel.conferenceURI == '' || subject.text == '' || selectedParticipants.count < conferenceManager.minParticipants
+ visible: AccountSettingsModel.conferenceUri == '' || subject.text == '' || selectedParticipants.count < conferenceManager.minParticipants
maxWidth: participantView.width
delay:0
text: {
@@ -49,7 +49,7 @@ DialogPlus {
if( selectedParticipants.count < conferenceManager.minParticipants)
//: 'You need at least %1 participant.' : Tooltip to warn a user that there are not enough participants for the chat creation.
txt += '- ' + qsTr('missingParticipants', '', conferenceManager.minParticipants).arg(conferenceManager.minParticipants) + '\n'
- if( AccountSettingsModel.conferenceURI == '')
+ if( AccountSettingsModel.conferenceUri == '')
//: 'You need to set the conference URI in your account settings to create a conference based chat room.' : Tooltip to warn the user that a setting is missong in its configuration.
txt += '- ' + qsTr('missingConferenceURI') + '\n'
return txt;
diff --git a/linphone-app/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.js b/linphone-app/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.js
index 208e7d7be..acc619ad3 100644
--- a/linphone-app/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.js
+++ b/linphone-app/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.js
@@ -52,6 +52,7 @@ function initForm (account) {
route.text = config.route
conferenceUri.text = config.conferenceUri
videoConferenceUri.text = config.videoConferenceUri
+ limeServerUrl.text = config.limeServerUrl
contactParams.text = config.contactParams
avpfInterval.text = config.avpfInterval
registerEnabled.checked = config.registerEnabled
@@ -72,7 +73,7 @@ function initForm (account) {
}
function formIsValid () {
- return dialog._sipAddressOk && dialog._serverAddressOk && dialog._routeOk && dialog._conferenceUriOk && dialog._videoConferenceUriOk
+ return dialog._sipAddressOk && dialog._serverAddressOk && dialog._routeOk && dialog._conferenceUriOk && dialog._videoConferenceUriOk && dialog._limeServerUrlOk
}
// -----------------------------------------------------------------------------
@@ -86,6 +87,7 @@ function validAccount (account) {
route: route.text,
conferenceUri: conferenceUri.text,
videoConferenceUri: videoConferenceUri.text,
+ limeServerUrl: limeServerUrl.text,
contactParams: contactParams.text,
avpfInterval: avpfInterval.text,
registerEnabled: registerEnabled.checked,
@@ -119,6 +121,10 @@ function handleVideoConferenceUriChanged (uri) {
dialog._videoConferenceUriOk = uri=='' || Linphone.SipAddressesModel.addressIsValid(uri)
}
+function handleLimeServerUrlChanged (uri) {
+ dialog._limeServerUrlOk = uri=='' || Linphone.SipAddressesModel.addressIsValid(uri)
+}
+
function handleServerAddressChanged (address) {
if (address.length === 0) {
dialog._serverAddressOk = false
diff --git a/linphone-app/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.qml b/linphone-app/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.qml
index f6b7ff0e5..069a969bf 100644
--- a/linphone-app/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.qml
+++ b/linphone-app/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.qml
@@ -18,6 +18,7 @@ DialogPlus {
property bool _routeOk: true
property bool _conferenceUriOk: true
property bool _videoConferenceUriOk: true
+ property bool _limeServerUrlOk: true
flat: true
showMargins: true
@@ -151,8 +152,8 @@ DialogPlus {
}
FormLine {
FormGroup {
-
- label: 'Video Conference URI'
+ //: "Video Conference URI" : Label of a text edit for filling Video conference URI.
+ label: qsTr('videoConferenceURI')
TextField {
id: videoConferenceUri
@@ -165,6 +166,22 @@ DialogPlus {
}
}
}
+ FormLine {
+ FormGroup {
+ //: 'E2E encryption keys server URL' : Label of a text edit for filling the Lime server URL.
+ label: qsTr('limeServerUrl')
+
+ TextField {
+ id: limeServerUrl
+ //: "invalid E2E encryption keys server URL" : Error text about E2E encryption keys server URL.
+ error: dialog._limeServerUrlOk ? '' : qsTr("invalidLimeServerUrl")
+
+ onTextChanged: Logic.handleLimeServerUrlChanged(text)
+ Keys.onEnterPressed: nextItemInFocusChain().forceActiveFocus()
+ Keys.onReturnPressed: nextItemInFocusChain().forceActiveFocus()
+ }
+ }
+ }
FormLine {
FormGroup {