Terminology: room mention count → highlight count

This commit is contained in:
miruka 2020-05-31 19:13:19 -04:00
parent dce3328037
commit 3791a08eea
7 changed files with 32 additions and 31 deletions

View File

@ -278,12 +278,12 @@ class Backend:
room = self.models[user_id, "rooms"].get(room_id)
if room:
account = self.models["accounts"][user_id]
account.total_unread -= room.unreads
account.total_mentions -= room.mentions
account = self.models["accounts"][user_id]
account.total_unread -= room.unreads
account.total_highlights -= room.highlights
room.mentions = 0
room.unreads = 0
room.highlights = 0
room.unreads = 0
# General functions

View File

@ -1298,8 +1298,8 @@ class MatrixClient(nio.AsyncClient):
last_event_date = last_event_date,
mentions = room.unread_highlights,
unreads = room.unread_notifications,
unreads = room.unread_notifications,
highlights = room.unread_highlights,
)
self.models[self.user_id, "rooms"][room.room_id] = room_item

View File

@ -32,15 +32,15 @@ class TypeSpecifier(AutoStrEnum):
class Account(ModelItem):
"""A logged in matrix account."""
id: str = field()
order: int = -1
display_name: str = ""
avatar_url: str = ""
max_upload_size: int = 0
profile_updated: datetime = ZeroDate
first_sync_done: bool = False
total_unread: int = 0
total_mentions: int = 0
id: str = field()
order: int = -1
display_name: str = ""
avatar_url: str = ""
max_upload_size: int = 0
profile_updated: datetime = ZeroDate
first_sync_done: bool = False
total_unread: int = 0
total_highlights: int = 0
def __lt__(self, other: "Account") -> bool:
"""Sort by order, then by user ID."""
@ -84,16 +84,17 @@ class Room(ModelItem):
last_event_date: datetime = ZeroDate
mentions: int = 0
unreads: int = 0
unreads: int = 0
highlights: int = 0
def __lt__(self, other: "Room") -> bool:
"""Sort by membership, mentions/unread events, last event date, name.
"""Sort by membership, highlights/unread events, last event date, name.
Invited rooms are first, then joined rooms, then left rooms.
Within these categories, sort by last event date (room with recent
messages are first), then by display names, then account, but
keep rooms with mentions on top, followed by rooms with unread events.
keep rooms with highlights on top,
followed by rooms with unread events.
"""
# Left rooms may still have an inviter_id, so check left first.
@ -101,7 +102,7 @@ class Room(ModelItem):
self.for_account,
self.left,
other.inviter_id,
bool(other.mentions),
bool(other.highlights),
bool(other.unreads),
other.last_event_date,
(self.display_name or self.id).lower(),
@ -110,7 +111,7 @@ class Room(ModelItem):
other.for_account,
other.left,
self.inviter_id,
bool(self.mentions),
bool(self.highlights),
bool(self.unreads),
self.last_event_date,
(other.display_name or other.id).lower(),
@ -129,7 +130,7 @@ class AccountOrRoom(Account, Room):
other.type is Account,
self.left,
other.inviter_id,
bool(other.mentions),
bool(other.highlights),
bool(other.unreads),
other.last_event_date,
(self.display_name or self.id).lower(),
@ -140,7 +141,7 @@ class AccountOrRoom(Account, Room):
self.type is Account,
other.left,
self.inviter_id,
bool(self.mentions),
bool(self.highlights),
bool(self.unreads),
self.last_event_date,
(other.display_name or other.id).lower(),

View File

@ -56,7 +56,7 @@ HTile {
indicatorTheme:
theme.mainPane.accountBar.account.unreadIndicator
unreads: model.total_unread
mentions: model.total_mentions
highlights: model.total_highlights
}
}

View File

@ -19,7 +19,7 @@ HLabel {
background: Rectangle {
color:
mentions ?
highlights ?
indicatorTheme.mentionBackground :
indicatorTheme.background
@ -31,7 +31,7 @@ HLabel {
property QtObject indicatorTheme
property int unreads: 0
property int mentions: 0
property int highlights: 0
Behavior on scale { HNumberAnimation {} }

View File

@ -43,7 +43,7 @@ HTile {
indicatorTheme:
theme.mainPane.listView.room.unreadIndicator
unreads: model.unreads
mentions: model.mentions
highlights: model.highlights
}
HIcon {

View File

@ -140,8 +140,8 @@ HListView {
showItemAtIndex(accountIndice[currentUserId] + 1 + index)
}
function cycleUnreadRooms(forward=true, mentions=false) {
const prop = mentions ? "mentions" : "unreads"
function cycleUnreadRooms(forward=true, highlights=false) {
const prop = highlights ? "highlights" : "unreads"
const start = currentIndex === -1 ? 0 : currentIndex
let index = start
@ -151,7 +151,7 @@ HListView {
if (index < 0) index = model.count - 1
if (index > model.count - 1) index = 0
if (index === start && mentions)
if (index === start && highlights)
return cycleUnreadRooms(forward, false)
else if (index === start)
return false