Mick Sayson (3):
feat(offlinemsg): Force offline messages to always be enabled
refactor(offlinemsg): Decouple OfflineMsgEngine from other components
feat(offlinemsg): Enable offline messages with no history
Before we would alternate between status icon and online event icon.
Now each status has its own event version, so status doesn't appear to
alternate between online and the correct status.
e.g.
* viewBox is 16.1 wide, lock is 13.4 wide. change offset from 1.4 to 1.35
* dot is 6.8 wide, change offset from 4.65 to 4.6
* SVG partially generated by inkscape, partially manually edited
* increase signal granularity
* reduce state in GroupChatForm
* remove differentiation of "joined" and "online" peers, it doesn't exist in toxcore and can't be tracked reliably in qTox
* add system message when peer name changes, even if due to alias
* add system message when self name changes, for clarity
* update user_version as part of transaction, so that we rollback if update fails and don't increment version
* differentiate between two user_version 0 versions, to avoid the SQL error on new profile creation
* make table creation dependent on user_version, instead of creating tables if not exists every start
This avoids an extra alias table entry for the empty name. It is not possible to safely heal existing databases, since friend invite message is a normal action message making it hard to change the alias ID used by it, and the alias in the alias table could be used by any other messages if the user's name has ever truely been blank. Just avoid the incorrect alias entry for new chats.
Ubuntu 19.04 was released with AppArmor 2.13.2 [0].
Update documentation to hint users that they can use AppArmor profile
with latest AppArmor features on Ubuntu 19.04 release.
[0] https://packages.ubuntu.com/disco/admin/apparmor