mirror of
https://gitlab.linphone.org/BC/public/linphone-desktop.git
synced 2026-01-31 10:59:23 +00:00
Fix on enabling Ephemeral on chat room creation. It wasn't enabled if the creation comes from remote user.
Fix crash with new Conference models. Fix duration to 1 hour and if a ICS was selected, display the correct duration. Fix margins on date in conference creation and on Date picker. Change admin english text event in chats. Remove secure icon in conference contact search. Display one star security icon if ZRTP was not verified. On authentication popup, remove Realm if username is only displayed. Adapt Identity text. Fix forward selection in search bar.
This commit is contained in:
parent
31011b2b4c
commit
307182dbe4
27 changed files with 62 additions and 37 deletions
|
|
@ -2342,7 +2342,7 @@ Klikněte zde: <a href="%1">%1</a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 již není admin</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2329,7 +2329,7 @@ Klik her: <a href="%1">%1</a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2329,7 +2329,7 @@ Klicken Sie hier: <a href="%1">%1</a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 ist nicht mehr Administrator</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2329,8 +2329,8 @@ Click here: <a href="%1">%1</a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 is no more an admin</translation>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 is no longer an admin</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>conferenceSecurityEvent</source>
|
||||
|
|
|
|||
|
|
@ -2329,7 +2329,7 @@ Haga clic aquí: <a href="%1">%1 </a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2329,7 +2329,7 @@ Cliquez ici : <a href="%1">%1</a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 n'est plus admin</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2316,7 +2316,7 @@ Kattintson ide: <a href="%1">%1</a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 most rendszergazdai jogosultság eltávolított</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2329,7 +2329,7 @@ Clicca: <a href="%1">%1</a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 non è più un amministratore</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2316,7 +2316,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 は現在管理者ではありません</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2342,7 +2342,7 @@ Spustelėkite čia: <a href="%1">%1</a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2329,7 +2329,7 @@ Clique aqui: <a href="%1">%1 </a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 não é mais um administrador</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2342,7 +2342,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 больше не администратор</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2329,7 +2329,7 @@ Klicka här: <a href="%1">%1</a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2316,7 +2316,7 @@ Buraya tıklayın: <a href="%1">%1</a>
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 artık yönetici değil</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2342,7 +2342,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -2316,7 +2316,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>conferencePArticipantUnsetAdminEvent</source>
|
||||
<extracomment>'%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<extracomment>'%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody</extracomment>
|
||||
<translation>%1 不再是管理员</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
|||
|
|
@ -268,13 +268,6 @@ bool CallsListModel::createSecureChat (const QString& subject, const QString &pa
|
|||
|
||||
qInfo() << "Create secure ChatRoom: " << subject << ", from " << QString::fromStdString(localAddress->asString()) << " and with " <<participantAddress;;
|
||||
std::shared_ptr<linphone::ChatRoom> chatRoom = core->createChatRoom(params, localAddress, participants);
|
||||
if(chatRoom) {
|
||||
int ephemeralTime = CoreManager::getInstance()->getSettingsModel()->getCreateEphemeralChatRooms();
|
||||
if( ephemeralTime>0){
|
||||
chatRoom->setEphemeralLifetime(ephemeralTime);
|
||||
chatRoom->enableEphemeral(true);
|
||||
}
|
||||
}
|
||||
// Still needed?
|
||||
// if( chatRoom != nullptr){
|
||||
// auto timelineList = CoreManager::getInstance()->getTimelineListModel();
|
||||
|
|
|
|||
|
|
@ -136,7 +136,7 @@ void ConferenceInfoModel::initDateTime(){
|
|||
setDateTime(QDateTime::fromMSecsSinceEpoch(0));
|
||||
setDuration(0);
|
||||
}else{
|
||||
setDateTime(QDateTime::currentDateTime());
|
||||
setDateTime(QDateTime::currentDateTimeUtc());
|
||||
setDuration(60);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -403,10 +403,17 @@ void TimelineListModel::onChatRoomRead(const std::shared_ptr<linphone::ChatRoom>
|
|||
void TimelineListModel::onChatRoomStateChanged(const std::shared_ptr<linphone::ChatRoom> &chatRoom,linphone::ChatRoom::State state){
|
||||
if( state == linphone::ChatRoom::State::Created
|
||||
&& !getTimeline(chatRoom, false)){// Create a new Timeline if needed
|
||||
if( chatRoom->hasCapability((int)linphone::ChatRoomCapabilities::Conference) && !chatRoom->ephemeralEnabled()) {
|
||||
int ephemeralTime = CoreManager::getInstance()->getSettingsModel()->getCreateEphemeralChatRooms();
|
||||
if( ephemeralTime>0){
|
||||
chatRoom->setEphemeralLifetime(ephemeralTime);
|
||||
chatRoom->enableEphemeral(true);
|
||||
}
|
||||
}
|
||||
QSharedPointer<TimelineModel> model = TimelineModel::create(this, chatRoom);
|
||||
if(model){
|
||||
connect(model.get(), SIGNAL(selectedChanged(bool)), this, SLOT(onSelectedHasChanged(bool)));
|
||||
add(model);
|
||||
add(model);
|
||||
}
|
||||
}else if(state == linphone::ChatRoom::State::Deleted || state == linphone::ChatRoom::State::Terminated){
|
||||
auto timeline = getTimeline(chatRoom, false);
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ import Utils 1.0
|
|||
DialogPlus {
|
||||
id: mainItem
|
||||
height: timePicker.visible ? 575 : 500
|
||||
width: 500
|
||||
width: 550
|
||||
|
||||
property alias hideOldDates: datePicker.hideOldDates
|
||||
|
||||
|
|
|
|||
|
|
@ -124,7 +124,7 @@ Item{
|
|||
|
||||
Rectangle { // index is 0 to 48
|
||||
anchors.centerIn: parent
|
||||
width: Math.max(text.implicitWidth, text.implicitHeight) + 20
|
||||
width: Math.min(parent.width, Math.max(text.implicitWidth, text.implicitHeight) + 20)
|
||||
height: width
|
||||
//border.width: 0.3 * radius
|
||||
border.width: 2
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ RowLayout{
|
|||
return qsTr('conferenceParticipantSetAdminEvent');
|
||||
}
|
||||
if (status == LinphoneEnums.EventLogTypeConferenceParticipantUnsetAdmin) {
|
||||
//: '%1 is no more an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody
|
||||
//: '%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody
|
||||
return qsTr('conferencePArticipantUnsetAdminEvent');
|
||||
}
|
||||
if (status == LinphoneEnums.EventLogTypeConferenceParticipantDeviceAdded) {
|
||||
|
|
|
|||
|
|
@ -448,7 +448,7 @@ Rectangle {
|
|||
height: IncallStyle.buttons.secure.buttonSize
|
||||
width: height
|
||||
isCustom: true
|
||||
iconIsCustom: ! (callModel.isSecured && SettingsModel.isPostQuantumAvailable && callModel.encryption === CallModel.CallEncryptionZrtp)
|
||||
iconIsCustom: ! (callModel.isSecured)
|
||||
backgroundRadius: width/2
|
||||
|
||||
colorSet: !callModel || callModel.encryption === CallModel.CallEncryptionNone
|
||||
|
|
|
|||
|
|
@ -179,7 +179,7 @@ DialogPlus {
|
|||
: qsTr('updateConferenceTitle')
|
||||
|
||||
height: window.height - 100
|
||||
width: window.width - 100
|
||||
width: window.width - 50
|
||||
expandHeight: true
|
||||
Component.onDestruction: gc() // Free DateModels from memory
|
||||
// ---------------------------------------------------------------------------
|
||||
|
|
@ -346,7 +346,13 @@ DialogPlus {
|
|||
ComboBox{
|
||||
id: durationField
|
||||
Layout.preferredWidth: parent.cellWidth;
|
||||
currentIndex: conferenceManager.conferenceInfoModel && conferenceManager.conferenceInfoModel.duration >= 1800 ? conferenceManager.conferenceInfoModel.duration / 1800 - 1 : 1
|
||||
currentIndex: !conferenceManager.conferenceInfoModel
|
||||
? 1
|
||||
: conferenceManager.conferenceInfoModel.duration >= 240
|
||||
? 3
|
||||
: Number(Utils.findIndex(model, function (duration) {
|
||||
return duration.value === conferenceManager.conferenceInfoModel.duration
|
||||
}))
|
||||
model: [{text:Utils.formatDuration(30*60), value:30}
|
||||
,{text:Utils.formatDuration(60*60), value:60}
|
||||
,{text:Utils.formatDuration(120*60), value:120}
|
||||
|
|
@ -475,7 +481,8 @@ DialogPlus {
|
|||
secure: SettingsModel.secureChatEnabled,
|
||||
visible: true,
|
||||
secureIconVisibleHandler : function(entry) {
|
||||
return entry && entry.sipAddress ? UtilsCpp.hasCapability(entry.sipAddress, LinphoneEnums.FriendCapabilityLimeX3Dh, true) : false
|
||||
return false;
|
||||
//return entry && entry.sipAddress ? UtilsCpp.hasCapability(entry.sipAddress, LinphoneEnums.FriendCapabilityLimeX3Dh, true) : false
|
||||
},
|
||||
handler: function (entry) {
|
||||
if(entry){
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ ColumnLayout {
|
|||
|
||||
property int securityLevel : chatRoomModel ? chatRoomModel.securityLevel : 1
|
||||
|
||||
property SipAddressObserver _sipAddressObserver: SipAddressesModel.getSipAddressObserver((fullPeerAddress?fullPeerAddress:peerAddress), (fullLocalAddress?fullLocalAddress:localAddress))
|
||||
property SipAddressObserver _sipAddressObserver: SipAddressesModel.getSipAddressObserver((fullPeerAddress?fullPeerAddress:defaultPeerAddress), (fullLocalAddress?fullLocalAddress:localAddress))
|
||||
|
||||
property bool haveMoreThanOneParticipants: chatRoomModel ? chatRoomModel.participants.count > 2 : false
|
||||
property bool haveLessThanMinParticipantsForCall: chatRoomModel ? chatRoomModel.participants.count <= 5 : false
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
import QtQuick 2.7
|
||||
|
||||
import Common 1.0
|
||||
|
||||
import Linphone 1.0
|
||||
import UtilsCpp 1.0
|
||||
import App.Styles 1.0
|
||||
|
||||
import 'AuthenticationRequest.js' as Logic
|
||||
|
|
@ -12,7 +13,7 @@ DialogPlus {
|
|||
id: dialog
|
||||
|
||||
property alias realm: realm.text
|
||||
property alias sipAddress: identity.text
|
||||
property alias sipAddress: identity.hiddenText
|
||||
property alias userId: userId.text
|
||||
|
||||
property var authInfo
|
||||
|
|
@ -52,13 +53,15 @@ DialogPlus {
|
|||
|
||||
TextField {
|
||||
id: identity
|
||||
|
||||
property string hiddenText
|
||||
text: UtilsCpp.toDisplayString(identity.hiddenText, SettingsModel.sipDisplayMode)
|
||||
readOnly: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
FormLine {
|
||||
visible: SettingsModel.sipDisplayMode == UtilsCpp.SIP_DISPLAY_ALL
|
||||
FormGroup {
|
||||
label: qsTr('realmLabel')
|
||||
|
||||
|
|
|
|||
|
|
@ -292,6 +292,21 @@ QtObject {
|
|||
property var foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 's')
|
||||
property var foregroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_c', icon, 's')
|
||||
}
|
||||
property QtObject secure2: QtObject {
|
||||
property int buttonSize: 40
|
||||
property int iconSize: 20
|
||||
property string icon : 'secure_level_2'
|
||||
property string name : 'secure2'
|
||||
|
||||
property var backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, '', '', '#66727B')
|
||||
property var backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, '', '', '#66727B')
|
||||
property var backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, '', '', '#66727B')
|
||||
property var backgroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_c', icon, '', '', '#66727B')
|
||||
property var foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 's')
|
||||
property var foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 's')
|
||||
property var foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 's')
|
||||
property var foregroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_c', icon, 's')
|
||||
}
|
||||
property QtObject postQuantumSecure: QtObject {
|
||||
property int buttonSize: 40
|
||||
property int iconSize: 20
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue