Add version types preset for version url checker.

Fix add/edit contact icons in secure chat.
Add a dynamic width combobox that fit content text.
This commit is contained in:
Julien Wadel 2022-05-24 12:29:39 +02:00
parent 7e612da83c
commit d4b4ccb3ce
23 changed files with 316 additions and 20 deletions

View file

@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added
- Based on LinphoneSDK 5.1.34
- Add Sanitizer build.
- Version types selection for version checker.
### Fixed
- Order messages from receiving time.

View file

@ -2655,6 +2655,21 @@ Klik her: <a href="%1">%1</a>
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2655,6 +2655,21 @@ Klicken Sie hier: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2678,6 +2678,21 @@ Click here: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation>Show a minimal version of what to display in timeline.</translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation>Release</translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation>Custom</translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation>Nightly</translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2655,6 +2655,21 @@ Haga clic aquí: &lt;a href=&quot;%1&quot;&gt;%1 &lt;/a&gt;
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2655,6 +2655,21 @@ Cliquez ici : &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation>Afficher une version minimaliste dans la zone de recherche des chronologies.</translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2644,6 +2644,21 @@ Kattintson ide: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2655,6 +2655,21 @@ Clicca: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2644,6 +2644,21 @@
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2666,6 +2666,21 @@ Spustelėkite čia: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2655,6 +2655,21 @@ Clique aqui: &lt;a href=&quot;%1&quot;&gt;%1 &lt;/a&gt;
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2666,6 +2666,21 @@
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2655,6 +2655,21 @@ Klicka här: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -475,7 +475,6 @@ Sunucu url&apos;si yapılandırılmadı.</translation>
<extracomment>&apos;%1 is typing...&apos; indicate that someone is composing in chat</extracomment>
<translation>
<numerusform>%1 yazıyor</numerusform>
<numerusform>%1 yazıyor</numerusform>
</translation>
</message>
<message>
@ -1040,7 +1039,6 @@ Sunucu url&apos;si yapılandırılmadı.</translation>
<extracomment>&apos;%1 minute&apos;</extracomment>
<translation>
<numerusform>%1 dakika</numerusform>
<numerusform>%1 dakika</numerusform>
</translation>
</message>
<message numerus="yes">
@ -1048,7 +1046,6 @@ Sunucu url&apos;si yapılandırılmadı.</translation>
<extracomment>&apos;%1 hour&apos;</extracomment>
<translation>
<numerusform>%1 saat</numerusform>
<numerusform>%1 saat</numerusform>
</translation>
</message>
<message numerus="yes">
@ -1056,7 +1053,6 @@ Sunucu url&apos;si yapılandırılmadı.</translation>
<extracomment>&apos;%1 day&apos;</extracomment>
<translation>
<numerusform>%1 gün</numerusform>
<numerusform>%1 gün</numerusform>
</translation>
</message>
<message numerus="yes">
@ -1064,7 +1060,6 @@ Sunucu url&apos;si yapılandırılmadı.</translation>
<extracomment>&apos;%1 week&apos;</extracomment>
<translation>
<numerusform>%1 hafta</numerusform>
<numerusform>%1 hafta</numerusform>
</translation>
</message>
</context>
@ -1369,7 +1364,7 @@ Buraya tıklayın: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
</message>
<message>
<source>newChatRoom</source>
<extracomment>&apos;Open Conference&apos; : Tooltip to illustrate a button</extracomment>
<extracomment>&apos;Start a chat room&apos; : Tooltip to illustrate a button</extracomment>
<translation>Konuşma odası başlat</translation>
</message>
<message>
@ -1472,7 +1467,6 @@ Buraya tıklayın: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;You need at least %1 participant.&apos; : Tooltip to warn a user that there are not enough participants for the chat creation.</extracomment>
<translation>
<numerusform>En az %1 katılımcınız olmalı.</numerusform>
<numerusform>En az %1 katılımcınız olmalı.</numerusform>
</translation>
</message>
<message>
@ -1601,7 +1595,6 @@ Buraya tıklayın: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;%1 unread messages&apos; : Little message to show on an event where unread messages begin.</extracomment>
<translation>
<numerusform>%1 okunmamış ileti</numerusform>
<numerusform>%1 okunmamış ileti</numerusform>
</translation>
</message>
</context>
@ -2639,7 +2632,7 @@ Buraya tıklayın: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<message>
<source>mipmapTooltip2</source>
<extracomment>&apos;Mipmap filtering gives better visual quality when scaling down compared to smooth, but it may come at a performance cost (both when initializing the image and during rendering).&apos; : Second line of a tooltip about Mipmap mode.</extracomment>
<translation type="unfinished"></translation>
<translation type="unfinished">Bu özellik, resmin ölçeklenirken veya dönüştürülürken mipmap süzgecini kullanıp kullanmayacağını barındırır. {2?}</translation>
</message>
<message>
<source>minimalTimelineFilterLabel</source>
@ -2651,6 +2644,21 @@ Buraya tıklayın: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation>Zaman çizelgesinde sunulacakların kısa sürümünü göster.</translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2666,6 +2666,21 @@
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -2644,6 +2644,21 @@
<extracomment>&apos;Show a minimal version of what to display in timeline.&apos; :</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeRelease</source>
<extracomment>&apos;Release&apos; : Keyword for an option to check the release version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeCustom</source>
<extracomment>&apos;Custom&apos; : Keyword for an option to check the custom version</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>versionCheckTypeNightly</source>
<extracomment>&apos;Nightly&apos; : Keyword for an option to check the nightly version</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>SettingsVideo</name>

View file

@ -1359,13 +1359,42 @@ void SettingsModel::setCheckForUpdateEnabled(bool enable){
}
QString SettingsModel::getVersionCheckUrl() const{
return Utils::coreStringToAppString(mConfig->getString("misc", "version_check_url_root", Constants::VersionCheckUrl));
return Utils::coreStringToAppString(mConfig->getString("misc", "version_check_url_root", Constants::VersionCheckReleaseUrl));
}
void SettingsModel::setVersionCheckUrl(const QString& url){
mConfig->setString("misc", "version_check_url_root", Utils::appStringToCoreString(url));
emit versionCheckUrlChanged();
if( url != getVersionCheckUrl()){
mConfig->setString("misc", "version_check_url_root", Utils::appStringToCoreString(url));
if( url == Constants::VersionCheckReleaseUrl)
setVersionCheckType(VersionCheckType_Release);
else if( url == Constants::VersionCheckNightlyUrl)
setVersionCheckType(VersionCheckType_Nightly);
else
setVersionCheckType(VersionCheckType_Custom);
emit versionCheckUrlChanged();
}
}
SettingsModel::VersionCheckType SettingsModel::getVersionCheckType() const{
return (SettingsModel::VersionCheckType) mConfig->getInt(UiSection, "version_check_type", (int)VersionCheckType_Release);
}
void SettingsModel::setVersionCheckType(const VersionCheckType& type){
if( type != getVersionCheckType()){
mConfig->setInt(UiSection, "version_check_type", (int)type);
switch(type){
case VersionCheckType_Release : setVersionCheckUrl(Constants::VersionCheckReleaseUrl); break;
case VersionCheckType_Nightly : setVersionCheckUrl(Constants::VersionCheckNightlyUrl);break;
case VersionCheckType_Custom : break;// Do not override URL
}
emit versionCheckTypeChanged();
}
}
bool SettingsModel::haveVersionNightlyUrl()const{
return QString(Constants::VersionCheckNightlyUrl) != "";
}
// -----------------------------------------------------------------------------
bool SettingsModel::getShowLocalSipAccount()const{

View file

@ -192,6 +192,7 @@ class SettingsModel : public QObject {
Q_PROPERTY(bool exitOnClose READ getExitOnClose WRITE setExitOnClose NOTIFY exitOnCloseChanged)
Q_PROPERTY(bool checkForUpdateEnabled READ isCheckForUpdateEnabled WRITE setCheckForUpdateEnabled NOTIFY checkForUpdateEnabledChanged)
Q_PROPERTY(QString versionCheckUrl READ getVersionCheckUrl WRITE setVersionCheckUrl NOTIFY versionCheckUrlChanged)
Q_PROPERTY(VersionCheckType versionCheckType READ getVersionCheckType WRITE setVersionCheckType NOTIFY versionCheckTypeChanged)
Q_PROPERTY(bool showLocalSipAccount READ getShowLocalSipAccount CONSTANT)
Q_PROPERTY(bool showStartChatButton READ getShowStartChatButton CONSTANT)
@ -220,6 +221,13 @@ public:
};
Q_ENUM(MediaEncryption)
enum VersionCheckType {
VersionCheckType_Release,
VersionCheckType_Nightly,
VersionCheckType_Custom
};
Q_ENUM(VersionCheckType);
SettingsModel (QObject *parent = Q_NULLPTR);
virtual ~SettingsModel ();
@ -508,6 +516,10 @@ public:
QString getVersionCheckUrl() const;
void setVersionCheckUrl(const QString& url);
VersionCheckType getVersionCheckType() const;
void setVersionCheckType(const VersionCheckType& type);
Q_INVOKABLE bool haveVersionNightlyUrl()const;
Q_INVOKABLE bool getShowLocalSipAccount () const;
Q_INVOKABLE bool getShowStartChatButton () const;
@ -705,6 +717,7 @@ signals:
void checkForUpdateEnabledChanged();
void versionCheckUrlChanged();
void versionCheckTypeChanged();
// Advanced. -----------------------------------------------------------------

View file

@ -105,7 +105,8 @@ constexpr char Constants::DefaultContactParameters[];
constexpr char Constants::DefaultContactParametersOnRemove[];
constexpr int Constants::DefaultExpires;
constexpr char Constants::DownloadUrl[];
constexpr char Constants::VersionCheckUrl[];
constexpr char Constants::VersionCheckReleaseUrl[];
constexpr char Constants::VersionCheckNightlyUrl[];
constexpr char Constants::PasswordRecoveryUrl[];
constexpr char Constants::CguUrl[];
constexpr char Constants::PrivatePolicyUrl[];

View file

@ -55,7 +55,8 @@ public:
static constexpr char DefaultContactParametersOnRemove[] = "message-expires=0";
static constexpr int DefaultExpires = 3600;
static constexpr char DownloadUrl[] = "https://www.linphone.org/technical-corner/linphone";
static constexpr char VersionCheckUrl[] = "https://linphone.org/releases";
static constexpr char VersionCheckReleaseUrl[] = "https://download.linphone.org/releases";
static constexpr char VersionCheckNightlyUrl[] = "https://download.linphone.org/snapshots";
static constexpr char PasswordRecoveryUrl[] = "https://subscribe.linphone.org/login";
static constexpr char CguUrl[] = "https://www.linphone.org/general-terms";
static constexpr char PrivatePolicyUrl[] = "https://www.linphone.org/privacy-policy";

View file

@ -18,6 +18,8 @@ Controls.ComboBox {
property bool haveBorder: true
property bool haveMargin: true
property color backgroundColor: ComboBoxStyle.background.color.normal
property int fitWidth: contentItem.fitWidth + ComboBoxStyle.indicator.dropDown.iconSize
// ---------------------------------------------------------------------------
@ -40,10 +42,12 @@ Controls.ComboBox {
// ---------------------------------------------------------------------------
contentItem: Item {
property int fitWidth: contentText.implicitWidth + ComboBoxStyle.contentItem.iconSize + contentLayout.anchors.leftMargin
height: comboBox.height
width: comboBox.width
RowLayout {
id: contentLayout
anchors {
fill: parent
leftMargin: comboBox.haveMargin ? ComboBoxStyle.contentItem.leftMargin : 0
@ -59,6 +63,7 @@ Controls.ComboBox {
}
Text {
id: contentText
Layout.fillWidth: true
color: ComboBoxStyle.contentItem.text.color

View file

@ -29,14 +29,14 @@ ColumnLayout {
property ChatRoomModel chatRoomModel
property string peerAddress : chatRoomModel?chatRoomModel.getPeerAddress() : defaultPeerAddress
property string peerAddress : getPeerAddress()
property string localAddress : chatRoomModel?chatRoomModel.getLocalAddress() : defaultLocalAddress
property string fullPeerAddress : chatRoomModel?chatRoomModel.getFullPeerAddress() : defaultFullPeerAddress
property string fullPeerAddress : getFullPeerAddress()
property string fullLocalAddress : chatRoomModel?chatRoomModel.getFullLocalAddress() : defaultFullLocalAddress
property int securityLevel : chatRoomModel ? chatRoomModel.securityLevel : 1
readonly property var _sipAddressObserver: SipAddressesModel.getSipAddressObserver((fullPeerAddress?fullPeerAddress:peerAddress), (fullLocalAddress?fullLocalAddress:localAddress))
property SipAddressObserver _sipAddressObserver: SipAddressesModel.getSipAddressObserver((fullPeerAddress?fullPeerAddress:peerAddress), (fullLocalAddress?fullLocalAddress:localAddress))
property bool haveMoreThanOneParticipants: chatRoomModel ? chatRoomModel.participants.count > 2 : false
property bool haveLessThanMinParticipantsForCall: chatRoomModel ? chatRoomModel.participants.count <= 5 : false
@ -48,7 +48,18 @@ ColumnLayout {
return chatRoomModel.sipAddress;
}
}else {
return conversation.fullPeerAddress || conversation.peerAddress || '';
return defaultPeerAddress
}
}
function getFullPeerAddress() {
if(chatRoomModel) {
if(chatRoomModel.groupEnabled || chatRoomModel.isSecure()) {
return chatRoomModel.participants.addressesToString;
}else {
return chatRoomModel.sipAddress;
}
}else {
return defaultFullPeerAddress;
}
}
@ -312,7 +323,7 @@ ColumnLayout {
visible: SettingsModel.contactsEnabled && !conversation.chatRoomModel.groupEnabled
onClicked: window.setView('ContactEdit', {
sipAddress: conversation.getPeerAddress()
sipAddress: conversation.getFullPeerAddress()
})
tooltipText: Logic.getEditTooltipText()
}

View file

@ -242,7 +242,7 @@ TabContainer {
FormGroup {
//: 'Check for updates' : Label switch for enabling check for updates
label: qsTr('checkForUpdateLabel')
maxWidth: 3*parent.width/2
RowLayout{
Switch {
checked: SettingsModel.checkForUpdateEnabled
@ -255,6 +255,23 @@ TabContainer {
onEditingFinished: SettingsModel.versionCheckUrl = text
}
ComboBox{
Layout.preferredWidth: fitWidth
Layout.leftMargin: 10
//: 'Release' : Keyword for an option to check the release version
model: [qsTr('versionCheckTypeRelease'),
//: 'Nightly' : Keyword for an option to check the nightly version
qsTr('versionCheckTypeNightly'),
//: 'Custom' : Keyword for an option to check the custom version
qsTr('versionCheckTypeCustom')]
visible: SettingsModel.haveVersionNightlyUrl()
currentIndex: SettingsModel.versionCheckType == SettingsModel.VersionCheckType_Release ? 0
: SettingsModel.versionCheckType == SettingsModel.VersionCheckType_Nightly ? 1
: 2
onActivated: SettingsModel.versionCheckType = ( currentIndex == 0 ? SettingsModel.VersionCheckType_Release
: currentIndex == 1 ? SettingsModel.VersionCheckType_Nightly
: SettingsModel.VersionCheckType_Custom)
}
}
}
}