Disable group chat and conference buttons if URIs are not set. Add a tooltip on buttons to warn the user about it.

Allow empty conference URI in settings.
This commit is contained in:
Julien Wadel 2022-07-13 17:56:46 +02:00
parent 6315d22977
commit c14607ad22
28 changed files with 242 additions and 21 deletions

View file

@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Phone dialpad on main window.
- Animated file in chats/notifications.
- Round progress bar for transferring a file and allow to cancel it.
- hide all accounts if their custom parameter 'hidden' is set to 1.
### Fixed
- Crash on exit.

View file

@ -1506,6 +1506,16 @@ Klik her: <a href="%1">%1</a>
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1506,6 +1506,16 @@ Klicken Sie hier: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1506,6 +1506,16 @@ Click here: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation>Meetings</translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation>Conference URI is not set. You have to change it in your account settings in order to create new group chats.</translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation>Video conference URI is not set. You have to change it in your account settings in order to create new conferences.</translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>
@ -3454,7 +3464,7 @@ Click here: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<message>
<source>callWarningRecord</source>
<extracomment>&apos;This call is being recorded.&apos; : Warn the user that the remote is currently recording the call.</extracomment>
<translation type="unfinished">This call is being recorded.</translation>
<translation>This call is being recorded.</translation>
</message>
</context>
<context>

View file

@ -1506,6 +1506,16 @@ Haga clic aquí: &lt;a href=&quot;%1&quot;&gt;%1 &lt;/a&gt;
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1506,6 +1506,16 @@ Cliquez ici : &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1496,6 +1496,16 @@ Kattintson ide: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1506,6 +1506,16 @@ Clicca: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation>Conferenze</translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1496,6 +1496,16 @@
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1516,6 +1516,16 @@ Spustelėkite čia: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1506,6 +1506,16 @@ Clique aqui: &lt;a href=&quot;%1&quot;&gt;%1 &lt;/a&gt;
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1516,6 +1516,16 @@
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation>Конференции</translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1506,6 +1506,16 @@ Klicka här: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1496,6 +1496,16 @@ Buraya tıklayın: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1516,6 +1516,16 @@
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -1496,6 +1496,16 @@
<extracomment>&apos;Conferences&apos; : Conference title for main window.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newChatRoomUriMissing</source>
<extracomment>&apos;Conference URI is not set. You have to change it in your account settings in order to create new group chats.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>newConferenceUriMissing</source>
<extracomment>&apos;Video conference URI is not set. You have to change it in your account settings in order to create new conferences.&apos; : Tooltip to warn the user to change a setting to activate an action.</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindowMenuBar</name>

View file

@ -88,8 +88,10 @@ ConferenceInfoModel::ConferenceInfoModel (QObject * parent) : QObject(parent){
mConferenceInfo->setDuration(0);
mIsScheduled = false;
auto accountAddress = CoreManager::getInstance()->getCore()->getDefaultAccount()->getContactAddress();
accountAddress->clean();
mConferenceInfo->setOrganizer(accountAddress);
if(accountAddress){
accountAddress->clean();
mConferenceInfo->setOrganizer(accountAddress);
}
}
// Callable from C++

View file

@ -316,12 +316,10 @@ bool AccountSettingsModel::addOrUpdateAccount(
routes.push_back(Utils::interpretUrl(data["route"].toString()));
accountParams->setRoutesAddresses(routes);
}
QString txt = data["conferenceUri"].toString();
if(!txt.isEmpty())
accountParams->setConferenceFactoryUri(Utils::appStringToCoreString(txt));
QString txt = data["conferenceUri"].toString();// Var is used for debug
accountParams->setConferenceFactoryUri(Utils::appStringToCoreString(txt));
txt = data["videoConferenceUri"].toString();
if(!txt.isEmpty())
accountParams->setAudioVideoConferenceFactoryAddress(Utils::interpretUrl(txt));
accountParams->setAudioVideoConferenceFactoryAddress(Utils::interpretUrl(txt));
if(data.contains("contactParams"))
accountParams->setContactParameters(Utils::appStringToCoreString(data["contactParams"].toString()));

View file

@ -31,12 +31,14 @@
#include "app/App.hpp"
#include "app/logger/Logger.hpp"
#include "app/paths/Paths.hpp"
#include "components/core/CoreManager.hpp"
#include "components/tunnel/TunnelModel.hpp"
#include "include/LinphoneApp/PluginNetworkHelper.hpp"
#include "utils/Utils.hpp"
#include "utils/Constants.hpp"
#include "utils/MediastreamerUtils.hpp"
#include "AccountSettingsModel.hpp"
#include "SettingsModel.hpp"
@ -57,7 +59,17 @@ SettingsModel::SettingsModel (QObject *parent) : QObject(parent) {
this, &SettingsModel::handleCallStateChanged);
QObject::connect(coreManager->getHandlers().get(), &CoreHandlers::ecCalibrationResult,
this, &SettingsModel::handleEcCalibrationResult);
// Readonly state that can change from default account
connect(coreManager->getAccountSettingsModel(), &AccountSettingsModel::defaultAccountChanged, this, &SettingsModel::groupChatEnabledChanged);
connect(coreManager->getAccountSettingsModel(), &AccountSettingsModel::defaultAccountChanged, this, &SettingsModel::videoConferenceEnabledChanged);
connect(coreManager->getAccountSettingsModel(), &AccountSettingsModel::defaultAccountChanged, this, &SettingsModel::secureChatEnabledChanged);
connect(coreManager->getAccountSettingsModel(), &AccountSettingsModel::accountSettingsUpdated, this, &SettingsModel::groupChatEnabledChanged);
connect(coreManager->getAccountSettingsModel(), &AccountSettingsModel::accountSettingsUpdated, this, &SettingsModel::videoConferenceEnabledChanged);
connect(coreManager->getAccountSettingsModel(), &AccountSettingsModel::accountSettingsUpdated, this, &SettingsModel::secureChatEnabledChanged);
configureRlsUri();
}
@ -808,13 +820,19 @@ void SettingsModel::setStandardChatEnabled (bool status) {
}
bool SettingsModel::getSecureChatEnabled () const {
return !!mConfig->getInt(UiSection, getEntryFullName(UiSection, "secure_chat_enabled"), 1);
return !!mConfig->getInt(UiSection, getEntryFullName(UiSection, "secure_chat_enabled"), 1)
&& !CoreManager::getInstance()->getCore()->getLimeX3DhServerUrl().empty() && getGroupChatEnabled();
;
}
void SettingsModel::setSecureChatEnabled (bool status) {
if(!isReadOnly(UiSection, "secure_chat_enabled"))
mConfig->setInt(UiSection, "secure_chat_enabled", status);
emit secureChatEnabledChanged(getSecureChatEnabled () );
emit secureChatEnabledChanged();
}
bool SettingsModel::getGroupChatEnabled() const{
return !CoreManager::getInstance()->getCore()->getDefaultAccount()->getParams()->getConferenceFactoryUri().empty();
}
// -----------------------------------------------------------------------------
@ -853,6 +871,9 @@ void SettingsModel::setConferenceEnabled (bool status) {
emit conferenceEnabledChanged(status);
}
bool SettingsModel::getVideoConferenceEnabled() const{
return !!CoreManager::getInstance()->getCore()->getDefaultAccount()->getParams()->getAudioVideoConferenceFactoryAddress();
}
// -----------------------------------------------------------------------------
bool SettingsModel::getChatNotificationsEnabled () const {

View file

@ -123,12 +123,14 @@ class SettingsModel : public QObject {
Q_PROPERTY(bool standardChatEnabled READ getStandardChatEnabled WRITE setStandardChatEnabled NOTIFY standardChatEnabledChanged)
Q_PROPERTY(bool secureChatEnabled READ getSecureChatEnabled WRITE setSecureChatEnabled NOTIFY secureChatEnabledChanged)
Q_PROPERTY(bool groupChatEnabled READ getGroupChatEnabled NOTIFY groupChatEnabledChanged)
Q_PROPERTY(bool hideEmptyChatRooms READ getHideEmptyChatRooms WRITE setHideEmptyChatRooms NOTIFY hideEmptyChatRoomsChanged)
Q_PROPERTY(bool waitRegistrationForCall READ getWaitRegistrationForCall WRITE setWaitRegistrationForCall NOTIFY waitRegistrationForCallChanged)// Allow call only if the current proxy has been registered
Q_PROPERTY(bool conferenceEnabled READ getConferenceEnabled WRITE setConferenceEnabled NOTIFY conferenceEnabledChanged)
Q_PROPERTY(bool videoConferenceEnabled READ getVideoConferenceEnabled NOTIFY videoConferenceEnabledChanged)
Q_PROPERTY(bool chatNotificationsEnabled READ getChatNotificationsEnabled WRITE setChatNotificationsEnabled NOTIFY chatNotificationsEnabledChanged)
Q_PROPERTY(bool chatNotificationSoundEnabled READ getChatNotificationSoundEnabled WRITE setChatNotificationSoundEnabled NOTIFY chatNotificationSoundEnabledChanged)
@ -427,8 +429,11 @@ public:
bool getWaitRegistrationForCall() const;
void setWaitRegistrationForCall(const bool& data);
bool getGroupChatEnabled()const;
bool getConferenceEnabled () const;
void setConferenceEnabled (bool status);
bool getVideoConferenceEnabled()const;
bool getChatNotificationsEnabled () const;
void setChatNotificationsEnabled (bool status);
@ -698,11 +703,13 @@ signals:
void muteMicrophoneEnabledChanged (bool status);
void standardChatEnabledChanged (bool status);
void secureChatEnabledChanged (bool status);
void secureChatEnabledChanged ();
void groupChatEnabledChanged();
void hideEmptyChatRoomsChanged (bool status);
void waitRegistrationForCallChanged (bool status);
void conferenceEnabledChanged (bool status);
void videoConferenceEnabledChanged ();
void chatNotificationsEnabledChanged (bool status);
void chatNotificationSoundEnabledChanged (bool status);

View file

@ -225,7 +225,7 @@ Window {
Connections {
target: SettingsModel
onStandardChatEnabledChanged: if(!chatRoomModel.haveEncryption) proxyModel.setEntryTypeFilter(status ? ChatRoomModel.GenericEntry : ChatRoomModel.CallEntry | ChatRoomModel.NoticeEntry)
onSecureChatEnabledChanged: if(chatRoomModel.haveEncryption) proxyModel.setEntryTypeFilter(status ? ChatRoomModel.GenericEntry : ChatRoomModel.CallEntry | ChatRoomModel.NoticeEntry)
onSecureChatEnabledChanged: if(chatRoomModel.haveEncryption) proxyModel.setEntryTypeFilter(SettingsModel.secureChatEnabled ? ChatRoomModel.GenericEntry : ChatRoomModel.CallEntry | ChatRoomModel.NoticeEntry)
}
}
}

View file

@ -268,7 +268,6 @@ ColumnLayout {
onClicked: CallsListModel.launchVideoCall(chatRoomModel.participants.addressesToString)
}
ActionButton {
isCustom: true
backgroundRadius: 1000
@ -303,13 +302,33 @@ ColumnLayout {
}
ActionButton {
id: groupCallButton
property ConferenceInfoModel conferenceInfoModel: ConferenceInfoModel{}
Connections{
target: groupCallButton.conferenceInfoModel
onConferenceCreated: {
groupCallButton.toggled = false
}
onConferenceCreationFailed:{
groupCallButton.toggled = false
}
}
isCustom: true
backgroundRadius: 1000
colorSet: ConversationStyle.bar.actions.groupChat
visible: SettingsModel.outgoingCallsEnabled && conversation.haveMoreThanOneParticipants && conversation.haveLessThanMinParticipantsForCall && !conversation.isReadOnly
visible: SettingsModel.videoConferenceEnabled && SettingsModel.outgoingCallsEnabled && conversation.haveMoreThanOneParticipants && conversation.haveLessThanMinParticipantsForCall && !conversation.isReadOnly
onClicked: Logic.openConferenceManager({chatRoomModel:conversation.chatRoomModel, autoCall:true})
//onClicked: CallsListModel. Logic.openConferenceManager({chatRoomModel:conversation.chatRoomModel, autoCall:true})
onClicked:{
groupCallButton.toggled = true
conferenceInfoModel.isScheduled = false
conferenceInfoModel.subject = chatRoomModel.subject
conferenceInfoModel.setParticipants(conversation.chatRoomModel.participants)
conferenceInfoModel.inviteMode = 0;
conferenceInfoModel.createConference(false)// TODO activate it when secure video conference is implemented
}
//: "Call all chat room's participants" : tooltip on a button for calling all participant in the current chat room
tooltipText: qsTr("groupChatCallButton")
}

View file

@ -90,6 +90,7 @@ DialogPlus {
Layout.fillWidth: true
Layout.topMargin:15
spacing:4
visible: SettingsModel.secureChatEnabled
Text {
Layout.fillWidth: true
//: 'Would you like to encrypt your chat?' : Ask about setting the chat room as secured.

View file

@ -215,12 +215,20 @@ ApplicationWindow {
//: 'Start a chat room' : Tooltip to illustrate a button
tooltipText : qsTr('newChatRoom')
visible: SettingsModel.standardChatEnabled || SettingsModel.secureChatEnabled
visible: (SettingsModel.standardChatEnabled || SettingsModel.secureChatEnabled)
enabled: SettingsModel.groupChatEnabled
onClicked: {
window.detachVirtualWindow()
window.attachVirtualWindow(Qt.resolvedUrl('Dialogs/NewChatRoom.qml')
,{})
}
TooltipArea{
visible: !SettingsModel.groupChatEnabled
maxWidth: smartSearchBar.width
delay:0
//: 'Conference URI is not set. You have to change it in your account settings in order to create new group chats.' : Tooltip to warn the user to change a setting to activate an action.
text: qsTr('newChatRoomUriMissing')
}
}
ActionButton {
@ -228,12 +236,20 @@ ApplicationWindow {
backgroundRadius: 4
colorSet: MainWindowStyle.buttons.newConference
visible: SettingsModel.conferenceEnabled
enabled: SettingsModel.videoConferenceEnabled
tooltipText:qsTr('newConferenceButton')
onClicked: {
window.detachVirtualWindow()
window.attachVirtualWindow(Utils.buildAppDialogUri('NewConference')
,{})
}
TooltipArea{
visible: !SettingsModel.videoConferenceEnabled
maxWidth: smartSearchBar.width
delay:0
//: 'Video conference URI is not set. You have to change it in your account settings in order to create new conferences.' : Tooltip to warn the user to change a setting to activate an action.
text: qsTr('newConferenceUriMissing')
}
}
ActionButton {
@ -311,7 +327,7 @@ ApplicationWindow {
overwriteColor: isSelected ? MainWindowStyle.menu.conferences.selectedColor : MainWindowStyle.menu.conferences.color
//: 'Conferences' : Conference title for main window.
name: qsTr('mainWindowConferencesTitle').toUpperCase()
visible: SettingsModel.conferenceEnabled
visible: SettingsModel.videoConferenceEnabled && SettingsModel.conferenceEnabled
onSelected: {
timeline.model.unselectAll()

View file

@ -11,7 +11,7 @@ QtObject {
property string sectionName: 'VideoConference'
property color backgroundColor: ColorsList.add(sectionName+'_bg', 'conference_bg').color
property color fullBackgroundColor: ColorsList.add(sectionName+'_fullscreen_bg', 'fullscreen_conference_bg').color
property color buzyColor: ColorsList.add(sectionName+'_indicator', 'i').color
property color buzyColor: ColorsList.add(sectionName+'_indicator', 'q').color
property QtObject title: QtObject {
property color color: ColorsList.add(sectionName+'_title', 'q').color

View file

@ -63,9 +63,11 @@ QtObject {
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 's_n_b_bg').color
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 's_h_b_bg').color
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, 's_p_b_bg').color
property color backgroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_u', icon, 's_p_b_bg').color
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 's_n_b_fg').color
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 's_h_b_fg').color
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 's_p_b_fg').color
property color foregroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_u', icon, 's_p_b_fg').color
}
property QtObject videoCall: QtObject {

View file

@ -103,9 +103,11 @@ QtObject {
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 'ma_n_b_bg').color
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 'ma_h_b_bg').color
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, 'ma_p_b_bg').color
property color backgroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_d', icon, 'ma_d_b_bg').color
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 'ma_n_b_fg').color
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 'ma_h_b_fg').color
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 'ma_p_b_fg').color
property color foregroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_d', icon, 'ma_d_b_fg').color
}
property QtObject newConference: QtObject {
property int iconSize: 40
@ -114,9 +116,11 @@ QtObject {
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 'ma_n_b_bg').color
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 'ma_h_b_bg').color
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, 'ma_p_b_bg').color
property color backgroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_d', icon, 'ma_d_b_bg').color
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 'ma_n_b_fg').color
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 'ma_h_b_fg').color
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 'ma_p_b_fg').color
property color foregroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_d', icon, 'ma_d_b_fg').color
}
property QtObject burgerMenu: QtObject {
property int iconSize: 40

@ -1 +1 @@
Subproject commit eb2849228136e76de2e885fbf6dfb5196acfd819
Subproject commit 4a16a9fb59fba50bf4902a8631a42f71795824b9