Skip to content

Commit

Permalink
[nemo-qml-plugin-email] Remove artificial one week limit for date sec…
Browse files Browse the repository at this point in the history
…tions. Contributes to JB#17582
  • Loading branch information
Joona Petrell committed May 6, 2020
1 parent 5d0819a commit a602851
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 39 deletions.
32 changes: 3 additions & 29 deletions src/emailmessagelistmodel.cpp
Expand Up @@ -31,8 +31,7 @@ EmailMessageListModel::EmailMessageListModel(QObject *parent)
m_searchBody(true),
m_searchRemainingOnRemote(0),
m_searchCanceled(false),
m_folderAccessor(new FolderAccessor(this)),
m_currentDate(QDate::currentDate())
m_folderAccessor(new FolderAccessor(this))
{
roles[QMailMessageModelBase::MessageAddressTextRole] = "sender";
roles[QMailMessageModelBase::MessageSubjectTextRole] = "subject";
Expand Down Expand Up @@ -195,17 +194,11 @@ QVariant EmailMessageListModel::data(const QModelIndex & index, int role) const
} else if (role == MessageSenderEmailAddressRole) {
return messageMetaData.from().address();
} else if (role == MessageTimeStampRole) {
return (messageMetaData.date().toLocalTime());
return messageMetaData.date().toLocalTime();
} else if (role == MessagePreviewRole) {
return messageMetaData.preview().simplified();
} else if (role == MessageTimeSectionRole) {
const int daysDiff = m_currentDate.toJulianDay() - (messageMetaData.date().toLocalTime()).date().toJulianDay();
if (daysDiff < 7) {
return (messageMetaData.date().toLocalTime()).date();
} else {
//returns epoch time for items older than a week
return QDateTime::fromTime_t(0);
}
return messageMetaData.date().toLocalTime().date();
} else if (role == MessagePriorityRole) {
if (messageMetaData.status() & QMailMessage::HighPriority) {
return HighPriority;
Expand Down Expand Up @@ -399,25 +392,6 @@ bool EmailMessageListModel::unreadMailsSelected() const
return !m_selectedUnreadIdx.isEmpty();
}

void EmailMessageListModel::notifyDateChanged()
{
dataChanged(index(0), index(rowCount() - 1), QVector<int>() << MessageTimeSectionRole);
}

void EmailMessageListModel::setCurrentDate(const QDate &dt)
{
if (m_currentDate != dt) {
m_currentDate = dt;
emit currentDateChanged();
emit dataChanged(index(0), index(rowCount() - 1), QVector<int>() << MessageTimeSectionRole);
}
}

QDate EmailMessageListModel::currentDate() const
{
return m_currentDate;
}

void EmailMessageListModel::setSortBy(EmailMessageListModel::Sort sort)
{
Qt::SortOrder order = Qt::AscendingOrder;
Expand Down
9 changes: 1 addition & 8 deletions src/emailmessagelistmodel.h
Expand Up @@ -43,7 +43,6 @@ class Q_DECL_EXPORT EmailMessageListModel : public QMailMessageListModel
Q_PROPERTY(int searchRemainingOnRemote READ searchRemainingOnRemote NOTIFY searchRemainingOnRemoteChanged FINAL)
Q_PROPERTY(EmailMessageListModel::Sort sortBy READ sortBy WRITE setSortBy NOTIFY sortByChanged)
Q_PROPERTY(bool unreadMailsSelected READ unreadMailsSelected NOTIFY unreadMailsSelectedChanged FINAL)
Q_PROPERTY(QDate currentDate READ currentDate WRITE setCurrentDate NOTIFY currentDateChanged)

public:
enum Roles {
Expand All @@ -62,7 +61,7 @@ class Q_DECL_EXPORT EmailMessageListModel : public QMailMessageListModel
MessageTimeStampRole, // returns timestamp in QDateTime format
MessageSelectModeRole, // returns the select mode
MessagePreviewRole, // returns message preview if available
MessageTimeSectionRole, // returns time section relative to the current time
MessageTimeSectionRole, // returns time section
MessagePriorityRole, // returns message priority
MessageAccountIdRole, // returns parent account id for the message
MessageHasAttachmentsRole, // returns 1 if message has attachments, 0 otherwise
Expand Down Expand Up @@ -109,10 +108,6 @@ class Q_DECL_EXPORT EmailMessageListModel : public QMailMessageListModel
void setSortBy(Sort sort);
EmailMessageListModel::Sort sortBy() const;
bool unreadMailsSelected() const;
void setCurrentDate(const QDate &dt);
QDate currentDate() const;

Q_INVOKABLE void notifyDateChanged();

Q_SIGNALS:
void folderAccessorChanged();
Expand All @@ -129,7 +124,6 @@ class Q_DECL_EXPORT EmailMessageListModel : public QMailMessageListModel
void searchRemainingOnRemoteChanged();
void sortByChanged();
void unreadMailsSelectedChanged();
void currentDateChanged();

public:
Q_INVOKABLE void setSearch(const QString &search);
Expand Down Expand Up @@ -188,7 +182,6 @@ private slots:
QList<int> m_selectedUnreadIdx;
QTimer m_remoteSearchTimer;
FolderAccessor *m_folderAccessor;
QDate m_currentDate;
};

#endif
2 changes: 0 additions & 2 deletions src/plugin/plugins.qmltypes
Expand Up @@ -825,8 +825,6 @@ Module {
Property { name: "searchRemainingOnRemote"; type: "int"; isReadonly: true }
Property { name: "sortBy"; type: "EmailMessageListModel::Sort" }
Property { name: "unreadMailsSelected"; type: "bool"; isReadonly: true }
Property { name: "currentDate"; type: "QDate" }
Method { name: "notifyDateChanged" }
Method {
name: "setSearch"
Parameter { name: "search"; type: "string" }
Expand Down

0 comments on commit a602851

Please sign in to comment.