Skip to content

Commit dbb3961

Browse files
committed
Merge branch 'omp-jb6059' into 'master'
[nemo-qml-plugin-email] Add trimmedSubject role without Re: and Fwd: prefixes.... See merge request mer-core/nemo-qml-plugin-email!79
2 parents b0beb9a + d545f11 commit dbb3961

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

src/emailmessagelistmodel.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ EmailMessageListModel::EmailMessageListModel(QObject *parent)
6464
roles[MessageSizeSectionRole] = "sizeSection";
6565
roles[MessageFolderIdRole] = "folderId";
6666
roles[MessageParsedSubject] = "parsedSubject";
67+
roles[MessageTrimmedSubject] = "trimmedSubject";
6768
roles[MessageHasCalendarCancellationRole] = "hasCalendarCancellation";
6869

6970
m_key = key();
@@ -236,6 +237,9 @@ QVariant EmailMessageListModel::data(const QModelIndex & index, int role) const
236237
subject.replace(QRegExp("<\\s*img", Qt::CaseInsensitive), "<no-img");
237238
subject.replace(QRegExp("<\\s*a", Qt::CaseInsensitive), "<no-a");
238239
return subject;
240+
} else if (role == MessageTrimmedSubject) {
241+
QString subject = QMailMessageListModel::data(index, QMailMessageModelBase::MessageSubjectTextRole).toString();
242+
return subject.replace(QRegExp(QStringLiteral("^(re:|fw:|fwd:|\\s*)*"), Qt::CaseInsensitive), QString());
239243
} else if (role == MessageHasCalendarCancellationRole) {
240244
return (messageMetaData.status() & QMailMessageMetaData::CalendarCancellation) != 0;
241245
}

src/emailmessagelistmodel.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ class Q_DECL_EXPORT EmailMessageListModel : public QMailMessageListModel
7171
MessageSizeSectionRole, // returns size section (0-2)
7272
MessageFolderIdRole, // returns parent folder id for the message
7373
MessageParsedSubject, // returns the message subject parsed against a pre-defined regular expression
74+
MessageTrimmedSubject, // returns the message subject without Re: and Fwd: prefixes
7475
MessageHasCalendarCancellationRole, // returns 1 if message has a calendar cancellation, 0 otherwise
7576
};
7677

0 commit comments

Comments
 (0)