diff --git a/linphone-app/assets/languages/cs.ts b/linphone-app/assets/languages/cs.ts
index cbcac7010..827ce8c3c 100644
--- a/linphone-app/assets/languages/cs.ts
+++ b/linphone-app/assets/languages/cs.ts
@@ -2261,7 +2261,7 @@ Klikněte zde: <a href="%1">%1</a>
conferencePArticipantUnsetAdminEvent
- '%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%1 již není admin
diff --git a/linphone-app/assets/languages/da.ts b/linphone-app/assets/languages/da.ts
index cc3cffce7..7b29baae9 100644
--- a/linphone-app/assets/languages/da.ts
+++ b/linphone-app/assets/languages/da.ts
@@ -2250,7 +2250,7 @@ Klik her: <a href="%1">%1</a>
conferencePArticipantUnsetAdminEvent
- '%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
diff --git a/linphone-app/assets/languages/de.ts b/linphone-app/assets/languages/de.ts
index c05a5e760..a8e54b7ad 100644
--- a/linphone-app/assets/languages/de.ts
+++ b/linphone-app/assets/languages/de.ts
@@ -2250,7 +2250,7 @@ Klicken Sie hier: <a href="%1">%1</a>
conferencePArticipantUnsetAdminEvent
- '%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%1 ist nicht mehr Administrator
diff --git a/linphone-app/assets/languages/en.ts b/linphone-app/assets/languages/en.ts
index 84619a2c7..ef54284c7 100644
--- a/linphone-app/assets/languages/en.ts
+++ b/linphone-app/assets/languages/en.ts
@@ -2250,8 +2250,8 @@ Click here: <a href="%1">%1</a>
conferencePArticipantUnsetAdminEvent
- '%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 more an admin
+ '%1 is no longer an admin' : Little message to show on the event when somebody lost its admin status. %1 is somebody
+ %1 is no longer an adminconferenceSecurityEvent
diff --git a/linphone-app/assets/languages/es.ts b/linphone-app/assets/languages/es.ts
index 42702c9b2..9ff693bf4 100644
--- a/linphone-app/assets/languages/es.ts
+++ b/linphone-app/assets/languages/es.ts
@@ -2250,7 +2250,7 @@ Haga clic aquí: <a href="%1">%1 </a>
conferencePArticipantUnsetAdminEvent
- '%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
diff --git a/linphone-app/assets/languages/fr_FR.ts b/linphone-app/assets/languages/fr_FR.ts
index 79682359f..f33a3bef0 100644
--- a/linphone-app/assets/languages/fr_FR.ts
+++ b/linphone-app/assets/languages/fr_FR.ts
@@ -2250,7 +2250,7 @@ Cliquez ici : <a href="%1">%1</a>
conferencePArticipantUnsetAdminEvent
- '%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%1 n'est plus admin
diff --git a/linphone-app/assets/languages/hu.ts b/linphone-app/assets/languages/hu.ts
index ba3537cab..8c5b0bf99 100644
--- a/linphone-app/assets/languages/hu.ts
+++ b/linphone-app/assets/languages/hu.ts
@@ -2238,7 +2238,7 @@ Kattintson ide: <a href="%1">%1</a>
conferencePArticipantUnsetAdminEvent
- '%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%1 most rendszergazdai jogosultság eltávolított
diff --git a/linphone-app/assets/languages/it.ts b/linphone-app/assets/languages/it.ts
index 5173999c4..35272be81 100644
--- a/linphone-app/assets/languages/it.ts
+++ b/linphone-app/assets/languages/it.ts
@@ -2250,7 +2250,7 @@ Clicca: <a href="%1">%1</a>
conferencePArticipantUnsetAdminEvent
- '%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%1 non è più un amministratore
diff --git a/linphone-app/assets/languages/ja.ts b/linphone-app/assets/languages/ja.ts
index 7825a1c1e..cefd8f1e5 100644
--- a/linphone-app/assets/languages/ja.ts
+++ b/linphone-app/assets/languages/ja.ts
@@ -2238,7 +2238,7 @@
conferencePArticipantUnsetAdminEvent
- '%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%1 は現在管理者ではありません
diff --git a/linphone-app/assets/languages/lt.ts b/linphone-app/assets/languages/lt.ts
index f015fd728..8708731b3 100644
--- a/linphone-app/assets/languages/lt.ts
+++ b/linphone-app/assets/languages/lt.ts
@@ -2262,7 +2262,7 @@ Spustelėkite čia: <a href="%1">%1</a>
conferencePArticipantUnsetAdminEvent
- '%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
diff --git a/linphone-app/assets/languages/pt_BR.ts b/linphone-app/assets/languages/pt_BR.ts
index fd9f3e1e9..ca1a867ec 100644
--- a/linphone-app/assets/languages/pt_BR.ts
+++ b/linphone-app/assets/languages/pt_BR.ts
@@ -2250,7 +2250,7 @@ Clique aqui: <a href="%1">%1 </a>
conferencePArticipantUnsetAdminEvent
- '%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%1 não é mais um administrador
diff --git a/linphone-app/assets/languages/ru.ts b/linphone-app/assets/languages/ru.ts
index 24a89a2d3..f4732e473 100644
--- a/linphone-app/assets/languages/ru.ts
+++ b/linphone-app/assets/languages/ru.ts
@@ -2262,7 +2262,7 @@
conferencePArticipantUnsetAdminEvent
- '%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%1 больше не администратор
diff --git a/linphone-app/assets/languages/sv.ts b/linphone-app/assets/languages/sv.ts
index 916df6c6a..7f89d3cc9 100644
--- a/linphone-app/assets/languages/sv.ts
+++ b/linphone-app/assets/languages/sv.ts
@@ -2250,7 +2250,7 @@ Klicka här: <a href="%1">%1</a>
conferencePArticipantUnsetAdminEvent
- '%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
diff --git a/linphone-app/assets/languages/tr.ts b/linphone-app/assets/languages/tr.ts
index dc8a0e5f2..8321ae7cc 100644
--- a/linphone-app/assets/languages/tr.ts
+++ b/linphone-app/assets/languages/tr.ts
@@ -2238,7 +2238,7 @@ Buraya tıklayın: <a href="%1">%1</a>
conferencePArticipantUnsetAdminEvent
- '%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%1 artık yönetici değil
diff --git a/linphone-app/assets/languages/uk.ts b/linphone-app/assets/languages/uk.ts
index 442a6cb2e..d821295de 100644
--- a/linphone-app/assets/languages/uk.ts
+++ b/linphone-app/assets/languages/uk.ts
@@ -2262,7 +2262,7 @@
conferencePArticipantUnsetAdminEvent
- '%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
diff --git a/linphone-app/assets/languages/zh_CN.ts b/linphone-app/assets/languages/zh_CN.ts
index 553bef147..523bde806 100644
--- a/linphone-app/assets/languages/zh_CN.ts
+++ b/linphone-app/assets/languages/zh_CN.ts
@@ -2238,7 +2238,7 @@
conferencePArticipantUnsetAdminEvent
- '%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%1 不再是管理员
diff --git a/linphone-app/src/components/calls/CallsListModel.cpp b/linphone-app/src/components/calls/CallsListModel.cpp
index 84ee1a0a4..18a89b834 100644
--- a/linphone-app/src/components/calls/CallsListModel.cpp
+++ b/linphone-app/src/components/calls/CallsListModel.cpp
@@ -267,13 +267,6 @@ bool CallsListModel::createSecureChat (const QString& subject, const QString &pa
qInfo() << "Create secure ChatRoom: " << subject << ", from " << QString::fromStdString(localAddress->asString()) << " and with " < 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();
diff --git a/linphone-app/src/components/conferenceInfo/ConferenceInfoModel.cpp b/linphone-app/src/components/conferenceInfo/ConferenceInfoModel.cpp
index 8438e6432..f8e1bafef 100644
--- a/linphone-app/src/components/conferenceInfo/ConferenceInfoModel.cpp
+++ b/linphone-app/src/components/conferenceInfo/ConferenceInfoModel.cpp
@@ -134,7 +134,7 @@ void ConferenceInfoModel::initDateTime(){
setDuration(0);
}else{
setDateTime(QDateTime::currentDateTimeUtc());
- setDuration(1200);
+ setDuration(120);
}
}
@@ -185,7 +185,7 @@ QString ConferenceInfoModel::displayNamesToString()const{
QString ConferenceInfoModel::getUri() const{
auto address = mConferenceInfo->getUri();
- return address->isValid() && !address->getDomain().empty() ? QString::fromStdString(address->asStringUriOnly()) : "";
+ return address && address->isValid() && !address->getDomain().empty() ? QString::fromStdString(address->asStringUriOnly()) : "";
}
bool ConferenceInfoModel::isScheduled() const{
diff --git a/linphone-app/src/components/timeline/TimelineListModel.cpp b/linphone-app/src/components/timeline/TimelineListModel.cpp
index 98455b035..d78eae62f 100644
--- a/linphone-app/src/components/timeline/TimelineListModel.cpp
+++ b/linphone-app/src/components/timeline/TimelineListModel.cpp
@@ -396,10 +396,17 @@ void TimelineListModel::onChatRoomRead(const std::shared_ptr
void TimelineListModel::onChatRoomStateChanged(const std::shared_ptr &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 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);
diff --git a/linphone-app/ui/modules/Common/Dialog/DateTimeDialog.qml b/linphone-app/ui/modules/Common/Dialog/DateTimeDialog.qml
index 4fff38c18..2845c4198 100644
--- a/linphone-app/ui/modules/Common/Dialog/DateTimeDialog.qml
+++ b/linphone-app/ui/modules/Common/Dialog/DateTimeDialog.qml
@@ -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
diff --git a/linphone-app/ui/modules/Common/Picker/DatePicker.qml b/linphone-app/ui/modules/Common/Picker/DatePicker.qml
index 115f0118a..a1231935c 100644
--- a/linphone-app/ui/modules/Common/Picker/DatePicker.qml
+++ b/linphone-app/ui/modules/Common/Picker/DatePicker.qml
@@ -120,7 +120,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
diff --git a/linphone-app/ui/modules/Linphone/Chat/Chat.js b/linphone-app/ui/modules/Linphone/Chat/Chat.js
index 82f4c5b19..77bc1346c 100644
--- a/linphone-app/ui/modules/Linphone/Chat/Chat.js
+++ b/linphone-app/ui/modules/Linphone/Chat/Chat.js
@@ -88,7 +88,7 @@ function forwardMessage(chatRoomModel, chatEntry, chatRoomConfig){
}, function (status) {
if (status) {
if(!chatRoomModel) {
- var chat = CallsListModel.createChatRoom( chatRoomConfig.subject, chatRoomConfig.haveEncryption, chatRoomConfig.participants, chatRoomConfig.toSelect)
+ var chat = Linphone.CallsListModel.createChatRoom( chatRoomConfig.subject, chatRoomConfig.haveEncryption, chatRoomConfig.participants, chatRoomConfig.toSelect)
if(chat)
chatRoomModel = chat.chatRoomModel
}
diff --git a/linphone-app/ui/modules/Linphone/Chat/Notice.qml b/linphone-app/ui/modules/Linphone/Chat/Notice.qml
index d3a48080f..8fbfb485e 100644
--- a/linphone-app/ui/modules/Linphone/Chat/Notice.qml
+++ b/linphone-app/ui/modules/Linphone/Chat/Notice.qml
@@ -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) {
diff --git a/linphone-app/ui/views/App/Calls/Incall.qml b/linphone-app/ui/views/App/Calls/Incall.qml
index 784e7cd85..3c787c3fa 100644
--- a/linphone-app/ui/views/App/Calls/Incall.qml
+++ b/linphone-app/ui/views/App/Calls/Incall.qml
@@ -448,15 +448,17 @@ 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.isSecured
- ? SettingsModel.isPostQuantumAvailable && callModel.encryption === CallModel.CallEncryptionZrtp && callModel.isPQZrtp == CallModel.CallPQStateOn
- ? IncallStyle.buttons.postQuantumSecure
- : IncallStyle.buttons.secure
- : IncallStyle.buttons.unsecure
-
+ colorSet: callModel.encryption === CallModel.CallEncryptionNone
+ ? IncallStyle.buttons.unsecure
+ : callModel.isSecured
+ ? SettingsModel.isPostQuantumAvailable && callModel.encryption === CallModel.CallEncryptionZrtp && callModel.isPQZrtp == CallModel.CallPQStateOn
+ ? IncallStyle.buttons.postQuantumSecure
+ : IncallStyle.buttons.secure2
+ : IncallStyle.buttons.secure
+ onColorSetChanged:console.log(colorSet.icon)
onClicked: if(callModel.encryption === CallModel.CallEncryptionZrtp){
window.attachVirtualWindow(Utils.buildLinphoneDialogUri('ZrtpTokenAuthenticationDialog'), {call:callModel})
}
diff --git a/linphone-app/ui/views/App/Dialog/NewConference.qml b/linphone-app/ui/views/App/Dialog/NewConference.qml
index 050f7a958..23bcb57b0 100644
--- a/linphone-app/ui/views/App/Dialog/NewConference.qml
+++ b/linphone-app/ui/views/App/Dialog/NewConference.qml
@@ -179,7 +179,7 @@ DialogPlus {
: qsTr('updateConferenceTitle')
height: window.height - 100
- width: window.width - 100
+ width: window.width - 50
expandHeight: true
// ---------------------------------------------------------------------------
@@ -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){
diff --git a/linphone-app/ui/views/App/Main/Conversation.qml b/linphone-app/ui/views/App/Main/Conversation.qml
index 969d51c24..7cf6016d4 100644
--- a/linphone-app/ui/views/App/Main/Conversation.qml
+++ b/linphone-app/ui/views/App/Main/Conversation.qml
@@ -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
diff --git a/linphone-app/ui/views/App/Main/Dialogs/AuthenticationRequest.qml b/linphone-app/ui/views/App/Main/Dialogs/AuthenticationRequest.qml
index 2b68a3685..56d0c2498 100644
--- a/linphone-app/ui/views/App/Main/Dialogs/AuthenticationRequest.qml
+++ b/linphone-app/ui/views/App/Main/Dialogs/AuthenticationRequest.qml
@@ -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')
diff --git a/linphone-app/ui/views/App/Styles/Calls/IncallStyle.qml b/linphone-app/ui/views/App/Styles/Calls/IncallStyle.qml
index 4071a3e6b..21a2e0077 100644
--- a/linphone-app/ui/views/App/Styles/Calls/IncallStyle.qml
+++ b/linphone-app/ui/views/App/Styles/Calls/IncallStyle.qml
@@ -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