Bug fix and minor improvements

Improvements:
- Add instant feedback upon setting a different
  presence for account (local echo)
- Sort room members by power level and then
  presence
- Periodically update members' `last_acitve_at`
  field on the room pane
- Move status message field up on account context
  menu, and put invisible before offline again

Bug fix:
- Do not try to override presence set from
  another client, accept it
This commit is contained in:
vslg
2020-07-09 20:53:25 -03:00
committed by miruka
parent a3c9ac20c6
commit 43df8fd60b
6 changed files with 94 additions and 60 deletions

View File

@@ -21,38 +21,6 @@ HMenu {
}
HMenuItem {
icon.name: "presence"
icon.color: theme.controls.presence.online
text: qsTr("Online")
onTriggered: setPresence("online")
}
HMenuItem {
enabled: presence
icon.name: "presence-busy"
icon.color: theme.controls.presence.unavailable
text: qsTr("Unavailable")
onTriggered: setPresence("unavailable")
}
HMenuItem {
icon.name: "presence-offline"
icon.color: theme.controls.presence.offline
text: qsTr("Offline")
onTriggered: setPresence("offline")
}
HMenuItem {
enabled: presence
icon.name: "presence-invisible"
icon.color: theme.controls.presence.offline
text: qsTr("Invisible")
onTriggered: setPresence("invisible")
}
HMenuSeparator { }
HLabeledItem {
id: statusMsgLabel
enabled: presence && presence !== "offline"
@@ -95,6 +63,38 @@ HMenu {
}
}
HMenuSeparator { }
HMenuItem {
icon.name: "presence"
icon.color: theme.controls.presence.online
text: qsTr("Online")
onTriggered: setPresence("online")
}
HMenuItem {
enabled: presence
icon.name: "presence-busy"
icon.color: theme.controls.presence.unavailable
text: qsTr("Unavailable")
onTriggered: setPresence("unavailable")
}
HMenuItem {
enabled: presence
icon.name: "presence-invisible"
icon.color: theme.controls.presence.offline
text: qsTr("Invisible")
onTriggered: setPresence("invisible")
}
HMenuItem {
icon.name: "presence-offline"
icon.color: theme.controls.presence.offline
text: qsTr("Offline")
onTriggered: setPresence("offline")
}
HMenuSeparator {
visible: statusMsgLabel.visible
height: visible ? implicitHeight : 0