fix #LINQT-1927 wrong conference link copy
This commit is contained in:
parent
e55779d257
commit
9074914f39
5 changed files with 19 additions and 8 deletions
|
|
@ -48,6 +48,10 @@ ConferenceCore::ConferenceCore(const std::shared_ptr<linphone::Conference> &conf
|
||||||
mIsScreenSharingEnabled = mConferenceModel->isScreenSharingEnabled();
|
mIsScreenSharingEnabled = mConferenceModel->isScreenSharingEnabled();
|
||||||
mIsRecording = conference->isRecording();
|
mIsRecording = conference->isRecording();
|
||||||
auto me = conference->getMe();
|
auto me = conference->getMe();
|
||||||
|
auto confAddress = conference->getConferenceAddress()->clone();
|
||||||
|
if (confAddress) {
|
||||||
|
mConfUri = Utils::coreStringToAppString(confAddress->asStringUriOnly());
|
||||||
|
}
|
||||||
if (me) {
|
if (me) {
|
||||||
mMe = ParticipantCore::create(me);
|
mMe = ParticipantCore::create(me);
|
||||||
}
|
}
|
||||||
|
|
@ -75,7 +79,14 @@ void ConferenceCore::setSelf(QSharedPointer<ConferenceCore> me) {
|
||||||
if (newState == linphone::Conference::State::Created) {
|
if (newState == linphone::Conference::State::Created) {
|
||||||
if (auto participantDevice = conference->getActiveSpeakerParticipantDevice()) {
|
if (auto participantDevice = conference->getActiveSpeakerParticipantDevice()) {
|
||||||
auto device = ParticipantDeviceCore::create(participantDevice);
|
auto device = ParticipantDeviceCore::create(participantDevice);
|
||||||
mConferenceModelConnection->invokeToCore([this, device]() { setActiveSpeakerDevice(device); });
|
QString address;
|
||||||
|
auto confAddress = conference->getConferenceAddress();
|
||||||
|
if (confAddress) address = Utils::coreStringToAppString(confAddress->asStringUriOnly());
|
||||||
|
mConferenceModelConnection->invokeToCore([this, device, address]() {
|
||||||
|
setActiveSpeakerDevice(device);
|
||||||
|
mConfUri = address;
|
||||||
|
emit conferenceUriChanged();
|
||||||
|
});
|
||||||
} else if (conference->getParticipantDeviceList().size() > 1) {
|
} else if (conference->getParticipantDeviceList().size() > 1) {
|
||||||
for (auto &device : conference->getParticipantDeviceList()) {
|
for (auto &device : conference->getParticipantDeviceList()) {
|
||||||
if (!ToolModel::isMe(device->getAddress())) {
|
if (!ToolModel::isMe(device->getAddress())) {
|
||||||
|
|
|
||||||
|
|
@ -43,6 +43,7 @@ public:
|
||||||
Q_PROPERTY(bool isRecording READ isRecording WRITE setRecording NOTIFY isRecordingChanged)
|
Q_PROPERTY(bool isRecording READ isRecording WRITE setRecording NOTIFY isRecordingChanged)
|
||||||
|
|
||||||
Q_PROPERTY(QString subject READ getSubject WRITE setSubject NOTIFY subjectChanged)
|
Q_PROPERTY(QString subject READ getSubject WRITE setSubject NOTIFY subjectChanged)
|
||||||
|
Q_PROPERTY(QString uri MEMBER mConfUri NOTIFY conferenceUriChanged)
|
||||||
Q_PROPERTY(bool isLocalScreenSharing MEMBER mIsLocalScreenSharing WRITE setIsLocalScreenSharing NOTIFY
|
Q_PROPERTY(bool isLocalScreenSharing MEMBER mIsLocalScreenSharing WRITE setIsLocalScreenSharing NOTIFY
|
||||||
isLocalScreenSharingChanged)
|
isLocalScreenSharingChanged)
|
||||||
Q_PROPERTY(bool isScreenSharingEnabled MEMBER mIsScreenSharingEnabled WRITE setIsScreenSharingEnabled NOTIFY
|
Q_PROPERTY(bool isScreenSharingEnabled MEMBER mIsScreenSharingEnabled WRITE setIsScreenSharingEnabled NOTIFY
|
||||||
|
|
@ -92,6 +93,7 @@ signals:
|
||||||
void activeSpeakerDeviceChanged();
|
void activeSpeakerDeviceChanged();
|
||||||
void subjectChanged();
|
void subjectChanged();
|
||||||
void isRecordingChanged();
|
void isRecordingChanged();
|
||||||
|
void conferenceUriChanged();
|
||||||
|
|
||||||
void lToggleScreenSharing();
|
void lToggleScreenSharing();
|
||||||
|
|
||||||
|
|
@ -107,6 +109,7 @@ private:
|
||||||
bool mIsLocalScreenSharing = false;
|
bool mIsLocalScreenSharing = false;
|
||||||
bool mIsScreenSharingEnabled = false;
|
bool mIsScreenSharingEnabled = false;
|
||||||
QString mSubject;
|
QString mSubject;
|
||||||
|
QString mConfUri;
|
||||||
QDateTime mStartDate = QDateTime::currentDateTime();
|
QDateTime mStartDate = QDateTime::currentDateTime();
|
||||||
|
|
||||||
DECLARE_ABSTRACT_OBJECT
|
DECLARE_ABSTRACT_OBJECT
|
||||||
|
|
|
||||||
|
|
@ -112,7 +112,7 @@ Item {
|
||||||
textColor: DefaultStyle.main2_400
|
textColor: DefaultStyle.main2_400
|
||||||
onClicked: {
|
onClicked: {
|
||||||
if (mainItem.conference) {
|
if (mainItem.conference) {
|
||||||
UtilsCpp.copyToClipboard(mainItem.call.core.remoteAddress)
|
UtilsCpp.copyToClipboard(mainItem.conference.core.uri)
|
||||||
showInformationPopup(qsTr("copied"),
|
showInformationPopup(qsTr("copied"),
|
||||||
//: Le lien de la réunion a été copié dans le presse-papier
|
//: Le lien de la réunion a été copié dans le presse-papier
|
||||||
qsTr("information_popup_meeting_address_copied_to_clipboard"), true)
|
qsTr("information_popup_meeting_address_copied_to_clipboard"), true)
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,6 @@ Rectangle {
|
||||||
}
|
}
|
||||||
AddParticipantsForm {
|
AddParticipantsForm {
|
||||||
id: manageParticipantsLayout
|
id: manageParticipantsLayout
|
||||||
visible: manageParticipants
|
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
Layout.fillHeight: true
|
Layout.fillHeight: true
|
||||||
Layout.topMargin: Math.round(9 * DefaultStyle.dp)
|
Layout.topMargin: Math.round(9 * DefaultStyle.dp)
|
||||||
|
|
|
||||||
|
|
@ -391,8 +391,7 @@ AbstractWindow {
|
||||||
color: DefaultStyle.grey_0
|
color: DefaultStyle.grey_0
|
||||||
}
|
}
|
||||||
Text {
|
Text {
|
||||||
text: mainWindow.call ? UtilsCpp.formatElapsedTime(
|
text: mainWindow.call ? UtilsCpp.formatElapsedTime(mainWindow.call.core.duration) : ""
|
||||||
mainWindow.call.core.duration) : ""
|
|
||||||
color: DefaultStyle.grey_0
|
color: DefaultStyle.grey_0
|
||||||
font {
|
font {
|
||||||
pixelSize: Typography.h3.pixelSize
|
pixelSize: Typography.h3.pixelSize
|
||||||
|
|
@ -406,8 +405,7 @@ AbstractWindow {
|
||||||
Text {
|
Text {
|
||||||
Layout.leftMargin: Math.round(14 * DefaultStyle.dp)
|
Layout.leftMargin: Math.round(14 * DefaultStyle.dp)
|
||||||
id: conferenceDate
|
id: conferenceDate
|
||||||
text: mainWindow.conferenceInfo ? mainWindow.conferenceInfo.core.getStartEndDateString(
|
text: mainWindow.conferenceInfo ? mainWindow.conferenceInfo.core.getStartEndDateString() : ""
|
||||||
) : ""
|
|
||||||
color: DefaultStyle.grey_0
|
color: DefaultStyle.grey_0
|
||||||
font {
|
font {
|
||||||
pixelSize: Typography.p1.pixelSize
|
pixelSize: Typography.p1.pixelSize
|
||||||
|
|
@ -950,7 +948,7 @@ AbstractWindow {
|
||||||
//: Partager le lien de la réunion
|
//: Partager le lien de la réunion
|
||||||
text: qsTr("conference_share_link_title")
|
text: qsTr("conference_share_link_title")
|
||||||
onClicked: {
|
onClicked: {
|
||||||
UtilsCpp.copyToClipboard(mainWindow.call.core.remoteAddress)
|
UtilsCpp.copyToClipboard(mainWindow.conference ? mainWindow.conference.core.uri : mainWindow.call.core.remoteAddress)
|
||||||
//: Copié
|
//: Copié
|
||||||
showInformationPopup(qsTr("copied"),
|
showInformationPopup(qsTr("copied"),
|
||||||
//: Le lien de la réunion a été copié dans le presse-papier
|
//: Le lien de la réunion a été copié dans le presse-papier
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue