In stickers, display username while being in pause.

Fix persistent call view when the call flow has been restarted from SDK (renegociation or other).
Fix conference info date time when updating it without entering a new timestamp.
Add a confirmation popup and a way to stop the conference creation.
Update SDK to fix camera crashes and looping resolutions changes for Windows.
This commit is contained in:
Julien Wadel 2022-10-13 15:50:38 +02:00
parent 4d4f278a8c
commit 72bb5ebdc1
20 changed files with 116 additions and 28 deletions

View file

@ -2041,6 +2041,11 @@ Klik her: <a href="%1">%1</a>
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2041,6 +2041,11 @@ Klicken Sie hier: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2041,6 +2041,11 @@ Click here: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation>Operations in progress, please wait</translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation>Do you want to close this form ?</translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2041,6 +2041,11 @@ Haga clic aquí: &lt;a href=&quot;%1&quot;&gt;%1 &lt;/a&gt;
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2041,6 +2041,11 @@ Cliquez ici : &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation>Opérations en cours, merci de patienter</translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2029,6 +2029,11 @@ Kattintson ide: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2041,6 +2041,11 @@ Clicca: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2029,6 +2029,11 @@
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2053,6 +2053,11 @@ Spustelėkite čia: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2041,6 +2041,11 @@ Clique aqui: &lt;a href=&quot;%1&quot;&gt;%1 &lt;/a&gt;
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2053,6 +2053,11 @@
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2041,6 +2041,11 @@ Klicka här: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2029,6 +2029,11 @@ Buraya tıklayın: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2053,6 +2053,11 @@
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -2029,6 +2029,11 @@
<extracomment>&apos;Operations in progress, please wait&apos; : Waiting message till the end of operations when creating a conference.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>confirmFormExit</source>
<extracomment>&apos;Do you want to close this form ?&apos; : confirmation text for exiting the creatoin form</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Notice</name>

View file

@ -53,11 +53,8 @@ constexpr int DelayBeforeRemoveCall = 6000;
static inline int findCallIndex (QList<QSharedPointer<QObject>> &list, const shared_ptr<linphone::Call> &call) {
auto it = find_if(list.begin(), list.end(), [call](QSharedPointer<QObject> callModel) {
return call == callModel.objectCast<CallModel>()->getCall();
});
Q_ASSERT(it != list.end());
return int(distance(list.begin(), it));
});
return it == list.end() ? -1 : int(distance(list.begin(), it));
}
static inline int findCallIndex (QList<QSharedPointer<QObject>> &list, const CallModel &callModel) {
@ -474,22 +471,24 @@ void CallsListModel::handleCallStateChanged (const shared_ptr<linphone::Call> &c
// -----------------------------------------------------------------------------
void CallsListModel::addCall (const shared_ptr<linphone::Call> &call) {
QSharedPointer<CallModel> callModel = QSharedPointer<CallModel>::create(call);
qInfo() << QStringLiteral("Add call:") << callModel->getFullLocalAddress() << callModel->getFullPeerAddress();
App::getInstance()->getEngine()->setObjectOwnership(callModel.get(), QQmlEngine::CppOwnership);
add(callModel);
emit layoutChanged();
if (call->getDir() == linphone::Call::Dir::Outgoing) {
QQuickWindow *callsWindow = App::getInstance()->getCallsWindow();
if (callsWindow) {
if (CoreManager::getInstance()->getSettingsModel()->getKeepCallsWindowInBackground()) {
if (!callsWindow->isVisible())
callsWindow->showMinimized();
} else
App::smartShowWindow(callsWindow);
int index = findCallIndex(mList, call);
if( index < 0){
QSharedPointer<CallModel> callModel = QSharedPointer<CallModel>::create(call);
qInfo() << QStringLiteral("Add call:") << callModel->getFullLocalAddress() << callModel->getFullPeerAddress();
App::getInstance()->getEngine()->setObjectOwnership(callModel.get(), QQmlEngine::CppOwnership);
add(callModel);
emit layoutChanged();
if (call->getDir() == linphone::Call::Dir::Outgoing) {
QQuickWindow *callsWindow = App::getInstance()->getCallsWindow();
if (callsWindow) {
if (CoreManager::getInstance()->getSettingsModel()->getKeepCallsWindowInBackground()) {
if (!callsWindow->isVisible())
callsWindow->showMinimized();
} else
App::smartShowWindow(callsWindow);
}
}
}
}

View file

@ -11,7 +11,7 @@ import Common.Styles 1.0
Rectangle {
id: dialog
property alias buttons: buttons.data // Optionnal.
property alias buttons: buttonsView.data // Optionnal.
property alias title : titleBar.text //Optionnal. Show a title bar with a close button.
property alias descriptionText: description.text // Optionnal.
property int buttonsAlignment : Qt.AlignLeft
@ -101,7 +101,7 @@ Rectangle {
}
RowLayout {
id: buttons
id: buttonsView
Layout.alignment: buttonsAlignment
Layout.bottomMargin: DialogStyle.buttons.bottomMargin

View file

@ -42,7 +42,7 @@ Avatar {
return null;
}
username: !mainItem.isPaused && _username ? _username : ''
username: _username
Text {
anchors.fill: parent
color: CallStyle.container.pause.text.color

View file

@ -19,7 +19,11 @@ DialogPlus {
id: conferenceManager
property bool isNew: !conferenceInfoModel || conferenceInfoModel.uri === ''
property ConferenceInfoModel conferenceInfoModel: ConferenceInfoModel{}
onConferenceInfoModelChanged: selectedParticipants.setAddresses(conferenceInfoModel)
onConferenceInfoModelChanged: {
dateField.setDate(conferenceManager.conferenceInfoModel.dateTime);
timeField.setTime(conferenceManager.conferenceInfoModel.dateTime);
selectedParticipants.setAddresses(conferenceInfoModel)
}
property bool forceSchedule : false
property int creationState: 0// -1=error, 0=Idle, 1=processing, 2=processed
@ -347,7 +351,7 @@ DialogPlus {
ComboBox{
id: durationField
Layout.preferredWidth: parent.cellWidth;
currentIndex: conferenceManager.conferenceInfoModel && conferenceManager.conferenceInfoModel.duration >= 1800 ? conferenceManager.conferenceInfoModel.duration / 1800 - 1 : 0
currentIndex: conferenceManager.conferenceInfoModel && conferenceManager.conferenceInfoModel.duration >= 1800 ? conferenceManager.conferenceInfoModel.duration / 1800 - 1 : 1
model: [{text:Utils.formatDuration(30*60), value:30}
,{text:Utils.formatDuration(60*60), value:60}
,{text:Utils.formatDuration(120*60), value:120}
@ -598,10 +602,20 @@ DialogPlus {
foregroundItem: Item{
id: busyPanel
anchors.fill: parent
visible: conferenceManager.creationState == 1
visible:conferenceManager.creationState == 1
MouseArea{// Grabber
anchors.fill: parent
cursorShape: Qt.ArrowCursor
onClicked:{
window.attachVirtualWindow(Utils.buildCommonDialogUri('ConfirmDialog'), {
//: 'Do you want to close this form ?' : confirmation text for exiting the creatoin form
descriptionText: qsTr('confirmFormExit'),
}, function (status) {
if (status) {
exit(0)
}
})
}
}
Rectangle{
anchors.fill: parent

@ -1 +1 @@
Subproject commit 016af4af95eb25d6e80380ad76776218b8a42bc0
Subproject commit 1a305de03be82f27ccd570404963c9a48bc500ab