Mick Sayson
2283d0c1b0
feat(offlinemsg): Enable offline messages with no history
6 years ago
Mick Sayson
e5016337bb
refactor(offlinemsg): Decouple OfflineMsgEngine from other components
6 years ago
Mick Sayson
d934cf372b
feat(offlinemsg): Force offline messages to always be enabled
6 years ago
sudden6
22362d2940
refactor(audio): Remove Audio singleton
...
This commit finally removes the Audio singleton and allocates the audio
backend in main.cpp.
6 years ago
Anthony Bilinski
17048c9cc4
feat(ui): add event icons for all statuses
...
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.
6 years ago
Anthony Bilinski
c8b156b3a1
feat(settings): save friend list sorting mode
6 years ago
Anthony Bilinski
08a646e456
refactor(friendlist): deduplicate time category widget logic
6 years ago
Anthony Bilinski
d55332ee0a
fix(activity): change last activity time from QDate to QDateTime
...
* Allows for strict sorting based on last activity in the future
6 years ago
Anthony Bilinski
ca397aebbf
fix(chatlog): update timestamp when db is slower than ack
...
* cannot invoke non-slot function
6 years ago
Anthony Bilinski
5f40ed8d8c
fix(friendlist): don't update friend's last activity on every start
...
Fix #5035
6 years ago
Anthony Bilinski
3f922100af
fix(friendlist): don't skip half of friends when sorting by activity
6 years ago
Anthony Bilinski
316893ace9
test(db): add db schema upgrade test
6 years ago
Anthony Bilinski
87a53fad96
fix(ui): don't duplicate group peer name in tooltip
6 years ago
Anthony Bilinski
b7bd7c6215
refactor(group): move peer tracking logic to Group from GroupChatForm
...
* 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
6 years ago
Anthony Bilinski
ef554496fa
refactor(group): rename class members
6 years ago
Anthony Bilinski
04f1ccda35
fix(group): treat empty peer names like empty friend names, by showing pk
...
Fix #5660
6 years ago
Anthony Bilinski
08839b7052
refactor(group): remove redundant updatePeer API
6 years ago
Anthony Bilinski
6801298e96
fix(groups): don't add friend alias to groups they aren't in
...
Fix #5657
6 years ago
Anthony Bilinski
6522988e8c
fix(corefile): cancel file transfer when peer goes offline
6 years ago
Anthony Bilinski
1628d495d1
fix(corefile): handle empty avatar transfer in core
6 years ago
Anthony Bilinski
b1eefc3f23
fix(corefile): include file id in map when sending empty avatar
6 years ago
sudden6
cef773c4f6
fix(AVForm): don't load gain when device not ready
...
This fixes a problem when the audio backend is not yet ready, but we try
to access it's volume.
6 years ago
Anthony Bilinski
c12605db6d
fix(history): create file_transfers table in upgrade
...
* bug introduced in refactor 329172321d
6 years ago
Anthony Bilinski
e9f8795197
fix(ui): show empty status as placeholder instead of as status
6 years ago
Anthony Bilinski
329172321d
refactor(history): create db as part of schema upgrade
...
* 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
6 years ago
sudden6
e7e35642d7
refactor(audio): introduce IAudioSource interface and use it
6 years ago
Anthony Bilinski
2ccb1ec150
fix(history): save name to history for friend invite message
...
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.
6 years ago
sudden6
a8546fe8cb
refactor: use smart pointer instead of raw pointer
6 years ago
sudden6
47402fae90
refactor: run formatting script
6 years ago
sudden6
5b908184fc
refactor(audio): move audio output to new IAudioSink interface
6 years ago
sudden6
c61fcd1f2b
refactor(audio): create interface for audio sinks and sources
6 years ago
Anthony Bilinski
881aa3083a
fix(status): use enum as UI property instead of untranslated string
...
Translation of getStatusTitle introduced in 15d72a9610
, breaking asset path from string.
6 years ago
Anthony Bilinski
e1876a2691
refactor(status): remove Status::getFromString and Status::getIconPixmap
...
getFromString is unused and incompatible with translated UI names, getIconPixmap is unused and completely generic.
6 years ago
Anthony Bilinski
dd007877a9
refactor(status): move Status out of Widget
6 years ago
Anthony Bilinski
e1f7edd298
chore(i18n): add pt_BR translation
6 years ago
Anthony Bilinski
0dc46cdc81
fix(ui): fix typo, add plural to translation
6 years ago
Diadlo
15d72a9610
fix: Call 'tr' in place, where text is accessible
6 years ago
TriKriSta
504b9b2014
style: edit style for QSplitter
6 years ago
TriKriSta
00aac5f152
style: edit styles
...
add custom themes in AboutFriendForm
edit style for QSpinBox disable
edit palette color for dark theme and etc
6 years ago
Anthony Bilinski
c0fdc42e33
refactor(mime): store ToxPk and GroupId as mimedata
6 years ago
Anthony Bilinski
f7603c294b
refactor(id): use toxPk and groupId instead of core numbers
...
Allows creating classes for blocked friends which have toxPks but no
core number.
6 years ago
Anthony Bilinski
ec500b6673
refactor(status): add Blocked status, deduplicate status parsing
...
Blocked status will represent friends who are removed from Toxcore, but who still exist in UI and can be readded to Toxcore at a future time using their public key. Blocked friends are similar to offline friends, but have a different status icon and will be seperated in the friends list.
6 years ago
Anthony Bilinski
0f5ad725d7
fix(groups): fix assert on group invite accept
6 years ago
Anthony Bilinski
df62463e27
fix(widget): fix freeze on showMainGui
...
Don't use copied uninitialized shadowing Core* in Widget
6 years ago
Anthony Bilinski
97d05f9d67
refactor(id): make ContactId interface, implement GroupId
...
Precursor for group history, friend blocking
6 years ago
sudden6
229ca307cf
refactor: remove unused functions detected by cppcheck
...
Note: Some more functions were detected, but this are the ones I'm
pretty sure we don't need.
6 years ago
sudden6
0da72e22d3
refactor: remove dead code
6 years ago
Anthony Bilinski
9b6019390b
refactor(groups): create Group on group join, assert Group exists on callbacks
6 years ago
TriKriSta
191f89ffa4
feat: add border for qrcode
6 years ago
sudden6
a4ad8c71b8
refactor(core): make CoreFile its own independent class
...
This paves the way for better testability of Core as well as CoreFile.
6 years ago