Mick Sayson
71f8220925
refactor(chatlog): Add class to manage underlying chatlog state
2019-06-21 11:01:35 -07:00
Mick Sayson
c779d52aef
refactor(messages): Replace QRegExp with QRegularExpression
2019-06-21 11:01:10 -07:00
Mick Sayson
fef89d70f9
fix(messages): Fix broken sanitized name for notifications/alert messages
...
* Note that this fix will not take effect until the message processor is
hooked up to widget and chatform
2019-06-21 11:01:10 -07:00
Mick Sayson
f0d840002a
refactor(messages): Create class to manage sending/receiving group messages from core
2019-06-21 11:01:10 -07:00
Mick Sayson
3fd4ce5952
refactor(core): Remove length parameter from splitMessages
...
* From the archeology I managed, MAX_GROUP_MESSAGE_LEN was a workaround
for an old toxcore bug. Testing removal of this parameter and replacing it
with tox_max_message_length() seems to work fine.
2019-06-21 11:01:10 -07:00
Mick Sayson
22a4c38bfd
refactor(messages): Create class to manage sending/receiving friend messages from core
2019-06-21 11:01:10 -07:00
Diadlo
678fc51c1b
refactor: Use model in chatroom widgets
2019-06-19 12:34:08 +03:00
Diadlo
0b9b538601
refactor: Inject DialogsManager in chatrooms
2019-06-19 12:34:06 +03:00
Diadlo
ac36ed8180
refactor: Create interfaces for ContentDialog and ContenDialogManager
2019-06-19 12:34:03 +03:00
Mick Sayson
15b9f9ff54
refactor(strongtype): Add property types to strong types
2019-06-18 13:38:02 -07:00
sudden6
63e903f950
Merge pull request #5695
...
jenli669 (2):
fix(group): set default group chat title when provided title is invalid
fix(group): Condense invalid title handling logic, clang-format
2019-06-18 21:32:14 +02:00
sudden6
0a95f9fc1d
Merge pull request #5698
...
jenli669 (2):
fix(group): always retain own name when updating group peer list
fix(group): fix logic oversight and code style
2019-06-17 23:37:40 +02:00
jenli669
aeddf4822a
fix(group): Condense invalid title handling logic, clang-format
...
This commit ignores the possibility of invalid length error being thrown
by a title after we've already checked its size the first time. We also
assume that a group chat cannot cease existing while we iterate over the
retrieved groups.
2019-06-15 00:37:02 +02:00
jenli669
a1a3749700
fix(group): fix logic oversight and code style
2019-06-15 00:34:02 +02:00
jenli669
f77a062120
fix(group): set default group chat title when provided title is invalid
...
Add handling logic for when a group exists but has an invalid title.
Title is created using the first 8 hexadecimals of the group chat id.
2019-06-15 00:15:48 +02:00
jenli669
c772db3baa
fix(group): always retain own name when updating group peer list
...
Adds special case for updating our own PK in regeneratePeerList
Format according to format-code.sh
Fixes #5686
2019-06-14 23:46:41 +02:00
jenli669
85f90ab221
fix(audio): correctly loop incoming call sound
...
Reordered audioNotification play/loop calls.
Fixes #5680
2019-06-12 22:59:04 +02:00
Anthony Bilinski
8568a14c93
Merge pull request #5688
...
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
2019-06-09 01:37:26 -07:00
sudden6
01a53789be
Merge pull request #5674
...
Monsterovich (8):
fix(ui): Improved notifications
fix(ui): Added option to hide message sender and contents
fix(ui): minor fix
fix(ui): don't forget to update UI
fix(ui): apply requested changes
fix(ui): revert CMakeLists.txt
fix(ui): minor fix
fix(ui): fix 2
2019-05-27 23:46:54 +02:00
Mick Sayson
2283d0c1b0
feat(offlinemsg): Enable offline messages with no history
2019-05-26 15:33:51 -07:00
Mick Sayson
e5016337bb
refactor(offlinemsg): Decouple OfflineMsgEngine from other components
2019-05-26 15:33:51 -07:00
Mick Sayson
d934cf372b
feat(offlinemsg): Force offline messages to always be enabled
2019-05-26 08:45:42 -07:00
Anthony Bilinski
74828c92e5
fix(settings): apply toxcore settings for encrypted profiles
...
Fix #5682
2019-05-24 14:37:45 -07:00
Monsterovich
1c02dc2d6b
fix(ui): fix 2
2019-05-23 19:49:42 +02:00
Monsterovich
161a773dbb
fix(ui): minor fix
2019-05-23 19:42:09 +02:00
Monsterovich
f8b54b39f3
fix(ui): apply requested changes
2019-05-23 15:30:31 +02:00
Monsterovich
84e41303ce
fix(ui): don't forget to update UI
2019-05-23 01:42:20 +02:00
Monsterovich
4a6ebff63a
fix(ui): minor fix
2019-05-23 00:50:04 +02:00
Monsterovich
3b305dd05a
fix(ui): Added option to hide message sender and contents
2019-05-23 00:44:26 +02:00
Monsterovich
1bbe210c25
fix(ui): Improved notifications
2019-05-22 19:48:23 +02:00
sudden6
22362d2940
refactor(audio): Remove Audio singleton
...
This commit finally removes the Audio singleton and allocates the audio
backend in main.cpp.
2019-05-21 21:05:27 +02:00
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.
2019-05-20 15:45:48 -07:00
Anthony Bilinski
c8b156b3a1
feat(settings): save friend list sorting mode
2019-05-17 10:33:47 -07:00
Anthony Bilinski
08a646e456
refactor(friendlist): deduplicate time category widget logic
2019-05-17 09:09:51 -07:00
Anthony Bilinski
d55332ee0a
fix(activity): change last activity time from QDate to QDateTime
...
* Allows for strict sorting based on last activity in the future
2019-05-17 09:09:51 -07:00
Anthony Bilinski
ca397aebbf
fix(chatlog): update timestamp when db is slower than ack
...
* cannot invoke non-slot function
2019-05-17 03:42:01 -07:00
Anthony Bilinski
5f40ed8d8c
fix(friendlist): don't update friend's last activity on every start
...
Fix #5035
2019-05-16 22:49:49 -07:00
Anthony Bilinski
3f922100af
fix(friendlist): don't skip half of friends when sorting by activity
2019-05-16 17:20:50 -07:00
Anthony Bilinski
316893ace9
test(db): add db schema upgrade test
2019-05-15 13:26:21 -07:00
Anthony Bilinski
87a53fad96
fix(ui): don't duplicate group peer name in tooltip
2019-05-15 12:00:50 -07:00
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
2019-05-15 12:00:44 -07:00
Anthony Bilinski
ef554496fa
refactor(group): rename class members
2019-05-15 11:54:10 -07:00
Anthony Bilinski
04f1ccda35
fix(group): treat empty peer names like empty friend names, by showing pk
...
Fix #5660
2019-05-15 11:52:27 -07:00
Anthony Bilinski
08839b7052
refactor(group): remove redundant updatePeer API
2019-05-15 00:13:55 -07:00
Anthony Bilinski
6801298e96
fix(groups): don't add friend alias to groups they aren't in
...
Fix #5657
2019-05-13 23:58:24 -07:00
Anthony Bilinski
6522988e8c
fix(corefile): cancel file transfer when peer goes offline
2019-05-09 21:42:47 -07:00
Anthony Bilinski
1628d495d1
fix(corefile): handle empty avatar transfer in core
2019-05-09 14:43:30 -07:00
Anthony Bilinski
b1eefc3f23
fix(corefile): include file id in map when sending empty avatar
2019-05-09 14:43:29 -07:00
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.
2019-05-09 12:39:50 +02:00
Anthony Bilinski
c12605db6d
fix(history): create file_transfers table in upgrade
...
* bug introduced in refactor 329172321d
2019-05-09 00:19:46 -07:00
Anthony Bilinski
e9f8795197
fix(ui): show empty status as placeholder instead of as status
2019-05-07 14:34:08 -07:00
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
2019-05-05 14:52:32 -07:00
sudden6
e7e35642d7
refactor(audio): introduce IAudioSource interface and use it
2019-05-05 12:49:56 +02:00
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.
2019-05-01 02:35:32 -07:00
sudden6
a8546fe8cb
refactor: use smart pointer instead of raw pointer
2019-04-26 16:26:57 +02:00
sudden6
47402fae90
refactor: run formatting script
2019-04-25 21:30:19 +02:00
sudden6
5b908184fc
refactor(audio): move audio output to new IAudioSink interface
2019-04-25 21:30:19 +02:00
sudden6
c61fcd1f2b
refactor(audio): create interface for audio sinks and sources
2019-04-25 21:30:19 +02:00
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.
2019-04-24 10:35:17 -07:00
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.
2019-04-24 10:35:16 -07:00
Anthony Bilinski
dd007877a9
refactor(status): move Status out of Widget
2019-04-24 10:35:15 -07:00
Anthony Bilinski
e1f7edd298
chore(i18n): add pt_BR translation
2019-04-24 09:01:32 -07:00
Anthony Bilinski
0dc46cdc81
fix(ui): fix typo, add plural to translation
2019-04-21 20:06:34 -07:00
Diadlo
15d72a9610
fix: Call 'tr' in place, where text is accessible
2019-04-21 14:42:44 +03:00
sudden6
8e13d96aa6
Merge pull request #5627
...
TriKriSta (2):
style: edit styles
style: edit style for QSplitter
2019-04-20 23:31:03 +02:00
TriKriSta
504b9b2014
style: edit style for QSplitter
2019-04-19 02:04:41 +03:00
TriKriSta
00aac5f152
style: edit styles
...
add custom themes in AboutFriendForm
edit style for QSpinBox disable
edit palette color for dark theme and etc
2019-04-17 20:31:42 +03:00
Anthony Bilinski
c0fdc42e33
refactor(mime): store ToxPk and GroupId as mimedata
2019-04-16 00:51:35 -07:00
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.
2019-04-16 00:44:16 -07:00
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.
2019-04-14 13:35:46 -07:00
Anthony Bilinski
0f5ad725d7
fix(groups): fix assert on group invite accept
2019-04-14 05:01:00 -07:00
Anthony Bilinski
df62463e27
fix(widget): fix freeze on showMainGui
...
Don't use copied uninitialized shadowing Core* in Widget
2019-04-13 20:04:24 -07:00
Anthony Bilinski
97d05f9d67
refactor(id): make ContactId interface, implement GroupId
...
Precursor for group history, friend blocking
2019-04-13 12:58:25 -07:00
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.
2019-04-13 11:48:16 +02:00
sudden6
0da72e22d3
refactor: remove dead code
2019-04-13 11:48:12 +02:00
Anthony Bilinski
9b6019390b
refactor(groups): create Group on group join, assert Group exists on callbacks
2019-04-12 09:13:14 -07:00
Anthony Bilinski
63ef6e3ff4
Merge pull request #5613
...
TriKriSta (1):
feat: add border for qrcode
2019-04-12 01:49:09 -07:00
TriKriSta
191f89ffa4
feat: add border for qrcode
2019-04-10 23:26:48 +03:00
sudden6
a4ad8c71b8
refactor(core): make CoreFile its own independent class
...
This paves the way for better testability of Core as well as CoreFile.
2019-04-10 10:28:13 +02:00
sudden6
f03262e98b
refactor(core): remove duplicate code and checks
2019-04-10 10:28:13 +02:00
sudden6
b033b5095b
refactor(core): use mutable keyword instead of smart pointer
2019-04-10 10:28:13 +02:00
sudden6
66f72ee863
refactor(core): remove unused function
...
This function would always return true for any non destroyed Core
object.
2019-04-10 10:28:12 +02:00
sudden6
93a7fdfe03
refactor(core): cleanup Core public functions
2019-04-10 10:28:09 +02:00
Anthony Bilinski
216766061c
refactor(avatar): split up setAvatar function
...
Don't convert to QPixMap before saving. Allow for use of file without re-encoding once metadata stripping is available for PNGs.
2019-04-08 23:45:47 -07:00
Anthony Bilinski
dfec934ff0
fix(alias): allow clearing alias from chatformheader
...
Now has the same logic as FriendWidget. Before clearing the field would result in no change being made, instead of clearing the alias.
2019-04-08 04:42:14 -07:00
TriKriSta
db962690bd
style: edit styles for myltiple windows
2019-03-31 19:54:12 +03:00
TriKriSta
d1715500f7
style: use css files for toxId
2019-03-31 17:57:17 +03:00
Anthony Bilinski
bef9d4b773
fix(settings): load personal settings before constructing core
...
Fix proxy settings not being passed to toxcore, bug present since
8574162949
. Not present in any releases.
2019-03-30 02:40:51 -07:00
Anthony Bilinski
e7f523bc9a
refactor(messages): don't use receipt 0 as unsent, simplify class state
2019-03-26 19:28:29 -07:00
Anthony Bilinski
477950737f
fix(UI): update peer label's style after setting audio playing property
2019-03-24 17:41:28 -07:00
Anthony Bilinski
7f802f593e
fix(ui): update UI when leaving group call due to being last member
2019-03-24 17:39:55 -07:00
Anthony Bilinski
ca02dcefaa
Merge pull request #5584
...
TriKriSta (2):
style: edit colors for transfer widget
refactor: delete unused files
2019-03-24 15:14:51 -07:00
sudden6
cd50376c2f
fix(notification): implement review comments
2019-03-24 11:58:10 +01:00
sudden6
4cb00957f3
feat(notify): integrate desktop notifications into settings
2019-03-24 11:58:10 +01:00
sudden6
66e2c01029
feat(notify): add desktop notifications using snorenotify
...
This commit adds very basic support for desktop notifications on friend
request, group invites, friend messages and group messages.
2019-03-24 11:58:09 +01:00
TriKriSta
5ed1065230
style: edit colors for transfer widget
2019-03-23 14:58:44 +02:00
Anthony Bilinski
18b52ce568
fix: register RowId meta type for use in fileInserted signal
2019-03-21 14:00:59 -07:00
sudden6
b7b9b58d42
refactor: make ToxCall non-moveable
...
We don't need move functionality and the code for it is complex and
error prone.
2019-03-17 19:32:34 +01:00
Anthony Bilinski
e489168775
fix(groups): add peers if already playing audio when netcam created
2019-03-08 09:08:29 -08:00
Anthony Bilinski
7c13b8b7db
fix(groups): don't add peers to netcam view until they play audio
...
Fix #5536
2019-03-08 09:08:29 -08:00