diff --git a/Linphone/core/conference/ConferenceInfoCore.cpp b/Linphone/core/conference/ConferenceInfoCore.cpp index 1a8aa40fb..c36c12b74 100644 --- a/Linphone/core/conference/ConferenceInfoCore.cpp +++ b/Linphone/core/conference/ConferenceInfoCore.cpp @@ -546,8 +546,9 @@ void ConferenceInfoCore::writeIntoModel(std::shared_ptr mod model->enableInvite(mInviteEnabled); if (!mOrganizerAddress.isEmpty()) { model->setOrganizer(mOrganizerAddress); - lDebug() << "Use of " << mOrganizerAddress; - } else lDebug() << "Use of " << model->getOrganizerAddress(); + lDebug() << log().arg("Use of %1").arg(mOrganizerAddress); + } else lDebug() << log().arg("Use of %1").arg(model->getOrganizerAddress()); + model->setDescription(mDescription); std::list> participantInfos; for (auto &p : mParticipants) { diff --git a/Linphone/core/conference/ConferenceInfoList.cpp b/Linphone/core/conference/ConferenceInfoList.cpp index b4e0b3525..7fe5e41ac 100644 --- a/Linphone/core/conference/ConferenceInfoList.cpp +++ b/Linphone/core/conference/ConferenceInfoList.cpp @@ -77,8 +77,9 @@ void ConferenceInfoList::setSelf(QSharedPointer me) { mCoreModelConnection->invokeToCore([this, items]() { mustBeInMainThread(getClassName()); int currentDateIndex = sort(*items); + auto itemAfterDummy = currentDateIndex < items->size() - 1 ? items->at(currentDateIndex + 1) : nullptr; + updateHaveCurrentDate(itemAfterDummy); resetData(*items); - updateHaveCurrentDate(); if (mLastConfInfoInserted) { int index = -1; // TODO : uncomment when linphone conference scheduler updated @@ -160,6 +161,11 @@ void ConferenceInfoList::updateHaveCurrentDate() { setHaveCurrentDate(false); } +void ConferenceInfoList::updateHaveCurrentDate(QSharedPointer itemToCompare) { + setHaveCurrentDate(itemToCompare && + itemToCompare->getDateTimeUtc().date() == QDateTime::currentDateTimeUtc().date()); +} + int ConferenceInfoList::getCurrentDateIndex() const { return mCurrentDateIndex; } diff --git a/Linphone/core/conference/ConferenceInfoList.hpp b/Linphone/core/conference/ConferenceInfoList.hpp index 4f23b120b..7bc727a0b 100644 --- a/Linphone/core/conference/ConferenceInfoList.hpp +++ b/Linphone/core/conference/ConferenceInfoList.hpp @@ -43,6 +43,7 @@ public: bool haveCurrentDate() const; void setHaveCurrentDate(bool have); void updateHaveCurrentDate(); + void updateHaveCurrentDate(QSharedPointer itemToCompare); int getCurrentDateIndex() const; void setCurrentDateIndex(int index); diff --git a/Linphone/view/Control/Display/Meeting/MeetingListView.qml b/Linphone/view/Control/Display/Meeting/MeetingListView.qml index be6891f1a..e2c84a2eb 100644 --- a/Linphone/view/Control/Display/Meeting/MeetingListView.qml +++ b/Linphone/view/Control/Display/Meeting/MeetingListView.qml @@ -23,7 +23,9 @@ ListView { // using highlight doesn't center, take time before moving and don't work for not visible item (like not loaded) highlightFollowsCurrentItem: false - onCountChanged: selectedConference = model && currentIndex != -1 && currentIndex < model.count ? model.getAt(currentIndex) : null + onCountChanged: { + selectedConference = model && currentIndex != -1 && currentIndex < model.count ? model.getAt(currentIndex) : null + } onCurrentIndexChanged: { selectedConference = model.getAt(currentIndex) || null } @@ -68,7 +70,7 @@ ListView { id: itemDelegate height: 63 * DefaultStyle.dp + topOffset width: mainItem.width - enabled: !isCanceled + enabled: !isCanceled && haveModel property var previousItem : mainItem.model.count > 0 && index > 0 ? mainItem.model.getAt(index-1) : null property var dateTime: !!$modelData && $modelData.core.haveModel ? $modelData.core.dateTime : UtilsCpp.getCurrentDateTime() property string day : UtilsCpp.toDateDayNameString(dateTime) @@ -161,7 +163,7 @@ ListView { Layout.preferredHeight: 24 * DefaultStyle.dp } Text { - text: $modelData.core.subject + text: $modelData? $modelData.core.subject : "" font { pixelSize: 13 * DefaultStyle.dp weight: 700 * DefaultStyle.dp