diff --git a/qml/form/RoomForm.qml b/qml/form/RoomForm.qml
index c2cb93a..78ca76b 100644
--- a/qml/form/RoomForm.qml
+++ b/qml/form/RoomForm.qml
@@ -111,7 +111,6 @@ Item {
displayMarginEnd: 40
verticalLayoutDirection: ListView.BottomToTop
spacing: 8
- cacheBuffer: 200
flickDeceleration: 4096
@@ -126,17 +125,18 @@ Item {
{
// Request the amount of messages enough to scroll at this
// rate for 3 more seconds
- var avgHeight = contentHeight / count
- currentRoom.getPreviousContent(-curVelocity*3 / avgHeight);
+ currentRoom.getPreviousContent(20);
}
}
onMovementEnded: currentRoom.saveViewport(sortedMessageEventModel.mapToSource(indexAt(contentX, contentY)), sortedMessageEventModel.mapToSource(largestVisibleIndex))
- displaced: Transition { NumberAnimation {
+ displaced: Transition {
+ NumberAnimation {
property: "y"; duration: 200
easing.type: Easing.OutQuad
- }}
+ }
+ }
model: SortFilterProxyModel {
id: sortedMessageEventModel
diff --git a/src/messageeventmodel.cpp b/src/messageeventmodel.cpp
index 8f2bb5e..3b845a9 100644
--- a/src/messageeventmodel.cpp
+++ b/src/messageeventmodel.cpp
@@ -210,15 +210,11 @@ QDateTime MessageEventModel::makeMessageTimestamp(
QString MessageEventModel::renderDate(QDateTime timestamp) const {
auto date = timestamp.toLocalTime().date();
- if (QMatrixClient::SettingsGroup("UI")
- .value("banner_human_friendly_date", true)
- .toBool()) {
- if (date == QDate::currentDate()) return tr("Today");
- if (date == QDate::currentDate().addDays(-1)) return tr("Yesterday");
- if (date == QDate::currentDate().addDays(-2))
- return tr("The day before yesterday");
- if (date > QDate::currentDate().addDays(-7)) return date.toString("dddd");
- }
+ if (date == QDate::currentDate()) return tr("Today");
+ if (date == QDate::currentDate().addDays(-1)) return tr("Yesterday");
+ if (date == QDate::currentDate().addDays(-2))
+ return tr("The day before yesterday");
+ if (date > QDate::currentDate().addDays(-7)) return date.toString("dddd");
return date.toString(Qt::DefaultLocaleShortDate);
}
@@ -334,7 +330,7 @@ QVariant MessageEventModel::data(const QModelIndex& idx, int role) const {
if (e.hasTextContent() && e.mimeType().name() != "text/plain") {
static const QRegExp userPillRegExp(
- "(.*)");
+ "(.*)");
QString formattedStr(
static_cast(e.content())->body);
formattedStr.replace(userPillRegExp,
@@ -504,13 +500,11 @@ QVariant MessageEventModel::data(const QModelIndex& idx, int role) const {
if (is(evt)) return EventStatus::Hidden;
auto* memberEvent = timelineIt->viewAs();
if (memberEvent) {
- if ((memberEvent->isJoin() || memberEvent->isLeave()) &&
- !Settings().value("UI/show_joinleave", true).toBool())
+ if ((memberEvent->isJoin() || memberEvent->isLeave()))
return EventStatus::Hidden;
}
if (memberEvent || evt.isRedacted()) {
- if (evt.senderId() == m_currentRoom->localUser()->id() ||
- Settings().value("UI/show_spammy").toBool()) {
+ if (evt.senderId() == m_currentRoom->localUser()->id()) {
// QElapsedTimer et; et.start();
auto hide = !isUserActivityNotable(timelineIt);
// qDebug() << "Checked user activity for" << evt.id() <<
@@ -518,14 +512,10 @@ QVariant MessageEventModel::data(const QModelIndex& idx, int role) const {
if (hide) return EventStatus::Hidden;
}
}
- if (evt.isRedacted())
- return Settings().value("UI/show_redacted").toBool()
- ? EventStatus::Redacted
- : EventStatus::Hidden;
+ if (evt.isRedacted()) return EventStatus::Redacted;
if (evt.isStateEvent() &&
- static_cast(evt).repeatsState() &&
- !Settings().value("UI/show_noop_events").toBool())
+ static_cast(evt).repeatsState())
return EventStatus::Hidden;
return EventStatus::Normal;