sudden6
4b9e4a571d
fix(coreav): avoid deadlock between CoreAV, main and Audio thread
...
This actually fixes two problems:
1) CoreAV and Audio thread both locked the callsLock and audioLock in
different orders, resulting in a deadlock of both threads. This fixed by
using a ReadWriteLock in the CoreAV thread.
2) Multiple functions were emitting signals while holding a lock. This
is unsafe, because the connected slot may acquire any other lock. This
is fixed by releasing the locks before emitting signals.
2020-01-29 22:22:18 +01:00
sudden6
9499925fb2
fix(coreav): cleanup assertions
...
It doesn't really make sense to assert that the callbacks are coming
from any other thread than CoreAV, when we actually want to ensure the
callback is coming from Core thread.
Remove over agressive assert from sendGroupCallAudio(...), this function
should be callable from any thread.
2020-01-29 22:22:18 +01:00
sudden6
98cfe9838f
refactor: properly lock against Core thread
...
We we're calling toxav_* functions without synchronizing to any of the
Tox threads.
Additionally remove the call timeout, it creates timers from different
threads, which causes errors.
2020-01-29 22:22:18 +01:00
sudden6
29f659c659
feat(coreav): add assertions to check for threading errors
2020-01-29 22:22:18 +01:00
sudden6
c332cc0cca
refactor(coreav): simplify start sequence
2020-01-29 22:22:17 +01:00
sudden6
2bc0057bbd
refactor(coreav): move threading of CoreAV to single mutex
...
Use a standard mutex instead of trying to build proper locking
ourselfes.
2020-01-29 22:22:17 +01:00
Anthony Bilinski
5b31effdb4
fix(group): don't display netcam view for group voice calls
...
This is a minimal fix to reduce risk for the release. A more complete
re-architecture will be made.
The netcam covers much of the chat in groups, and has nothing to show since
group video calls aren't possible. Who is speaking in call is already shown by
the bold names at the top of the group, taking much less space.
Fix #5918
2020-01-27 15:05:54 -08:00
Anthony Bilinski
92e51b05ac
fix(db): fix schema log to display correct version
2020-01-27 01:21:29 -08:00
Anthony Bilinski
981ecfcaeb
refactor(chatform): combine toggleVideoPreview implementations
2020-01-26 04:29:56 -08:00
Anthony Bilinski
89913e0f9a
refactor(netcam): remove GenericNetCamView, merge into NetCamview
...
Without GroupNetCamView, the split in arbitrary.
2020-01-26 04:29:55 -08:00
Anthony Bilinski
41d8f66e08
refactor(chatform): change ChatForm's netcam to NetCamView
...
Unlike GenericChatForm, ChatForm knows that it always has a NetCam
2020-01-26 04:29:55 -08:00
Anthony Bilinski
600993b43a
refactor(chatform): move netcam ownership to ChatForm from GenericChatForm
...
Since now only ChatForm uses the NetCamView.
2020-01-26 04:29:55 -08:00
Anthony Bilinski
8d8e75b800
refactor(chatform): move onMessagesClicked, onSplitterMoved to ChatForm
...
These API are only relevant for NetCamView, which is only used by ChatForm.
2020-01-26 04:29:55 -08:00
Anthony Bilinski
4c816b1bff
refactor(chatform): move create/show/hide NetCamView API to ChatForm
...
Since NetCamView is now only used by ChatForm, GenericChatForm shouldn't have
any of its functionality.
2020-01-26 04:29:54 -08:00
Anthony Bilinski
91bcd211a7
refactor(netcam): remove GroupNetCamView class
...
Fix #5918
2020-01-26 04:05:39 -08:00
Anthony Bilinski
366478fca9
chore: remove "Hardware" from issue template
...
For the grand majority of bug reports, user hardware isn't relevant. Figuring
out what to write isn't always trivial.
2020-01-26 02:33:20 -08:00
Anthony Bilinski
49abc996ae
Merge branch 'v1.17-dev'
2020-01-19 16:16:57 -08:00
Douglas Rhine
98a364ea2e
fix(build): appease appstream-glib validate
...
Flathub builds fail if appdata file
does not pass appstream-glib validate.
2020-01-19 16:06:24 -08:00
accelsao
bdb3b61ee0
fix(net): check if the node has all needed fields
...
Fixes ##5766
2020-01-19 16:06:19 -08:00
sudden6
4283a51df2
Merge pull request #5958
...
Douglas Rhine (1):
fix(build): appease appstream-glib validate
2020-01-19 17:57:50 +01:00
Douglas Rhine
dbf58826f6
fix(build): appease appstream-glib validate
...
Flathub builds fail if appdata file
does not pass appstream-glib validate.
2020-01-18 01:18:35 +00:00
Anthony Bilinski
cf672375be
revert(toxme): remove toxme from qTox - the service is offline permanently
...
As of 2019-10-09, toxme.io was taken offline permanently. Remove UI and code
in qTox relating to it. Revert this commit if it comes back online in the
future.
Fix #5897
2020-01-16 13:28:41 -08:00
sudden6
41f05f3a02
Merge pull request #5954
...
accelsao (1):
fix(net): check if the node has all needed fields
2020-01-16 08:59:18 +01:00
accelsao
ca4f14cc4c
fix(net): check if the node has all needed fields
...
Fixes ##5766
2020-01-14 09:04:55 +08:00
sudden6
1fa35bfcb5
chore: remove Debian bug workaround
2020-01-13 11:19:02 -08:00
sudden6
6fff5a59a4
chore: update AppImage build tools
2020-01-13 11:19:01 -08:00
sudden6
547a038e48
refactor: remove AppImage update bridge
...
When re-evaluating our dependencies we decided that the update bridge
has a high potential for security issues because it's not widely used.
Additionally similar functionality is already present in qTox.
2020-01-13 11:19:01 -08:00
sudden6
7b45d7d9e1
chore: remove Debian bug workaround
2020-01-12 20:45:03 +01:00
sudden6
cfea3256c7
chore: update AppImage build tools
2020-01-12 20:45:03 +01:00
sudden6
5b3c8aec11
refactor: remove AppImage update bridge
...
When re-evaluating our dependencies we decided that the update bridge
has a high potential for security issues because it's not widely used.
Additionally similar functionality is already present in qTox.
2020-01-12 20:44:21 +01:00
sudden6
9765cf5c72
Merge pull request #5946
...
Emery Hemingway (1):
feat(build): add nix-shell support
2019-12-18 09:42:11 +01:00
Emery Hemingway
faeb699fd0
feat(build): add nix-shell support
...
Add a metadata file and build rules to build and test from a development
shell provided by the Nix package manager.
2019-12-16 06:57:11 +00:00
Anthony Bilinski
f252816f55
Merge branch 'v1.17-dev'
2019-12-02 08:46:04 -08:00
Anthony Bilinski
7be327714a
Merge pull request #5828
...
Mick Sayson (1):
fix(history): Prevent invalid history access
2019-12-02 03:34:34 -08:00
Mick Sayson
e3e6e1d9c4
fix(history): Prevent invalid history access
...
* When the DB schema was too new we were accessing history anyways. This
has potential to just completely corrupt the DB
* When history was disabled there was a chance we would attempt to write
to history anyways. Added more checks in this area
* Chatform was accessing invalid iterators when there were no displayed
messages. Added a guard for this case
2019-12-02 03:04:53 -08:00
sudden6
9fa6a4996d
chore: add OARS tags to appimage.xml
...
These tags help app stores and application launchers to put qTox in the
correct categories.
Fixes #5152
2019-12-02 02:02:08 -08:00
Anthony Bilinski
8a821c8858
Merge pull request #5941
...
Katherine Mantel (1):
fix(ui): fix auto-accept directory setup display
2019-12-02 01:59:42 -08:00
Katherine Mantel
8c5cab935c
fix(ui): fix auto-accept directory setup display
...
Fixes #5917
2019-12-02 00:54:19 -08:00
Anthony Bilinski
88d10b1249
refactor(widget): remove uneeded check of if message is targetted
...
It's only relevant for group messages, where the check already exists.
2019-11-27 08:26:59 -08:00
Anthony Bilinski
9b23abc6de
fix(core): avoid using stack allocated memory past end of scope
...
tox_file_send was using a pointer to memory that was out of scope. Extend
lifetime of avatarHash to avoid this.
2019-11-27 07:28:47 -08:00
Anthony Bilinski
1f80173b2d
fix(offlinemsg): don't invalidate iterator before use
...
QMap::erase invalidates the iterator, meaning our usage of it on the
next line was unsafe.
2019-11-27 07:28:47 -08:00
Anthony Bilinski
479b39f536
fix(offlingmsg): only dipatch offline messages on friend online change
...
Before if the new status was online, we would dipsatch, which could cause
double sends in the case of a friend going from e.g. busy -> away
2019-11-25 20:52:06 -08:00
Anthony Bilinski
239dfdc65c
refactor(status): move isOnline into Status from Friend
...
Allows checking if a status if equivalent to Online without needing a Friend
class.
2019-11-25 20:52:06 -08:00
Anthony Bilinski
e9570eafdf
Merge branch 'v1.17-dev'
2019-11-25 16:56:50 -08:00
Anthony Bilinski
05064771ab
fix(test): create db tables in defined order, verify indexes
...
indexes need to be created after their corresponding table is created.
QMap doesn't enforce insertion order, just key order, so use a vector.
Also verify indexes from sql_master instead of only tables.
2019-11-25 16:21:17 -08:00
Anthony Bilinski
edd72906fb
perf(history): enable sql index on chat_id in history table
...
This makes every query with a "WHERE history.chat_id" clause quicker,
improving history load time by 50% on my profile.
Related to #5812
2019-11-25 16:21:17 -08:00
Anthony Bilinski
af19c0d73b
Merge pull request #5875
...
Mick Sayson (1):
fix(chatform): Prevent date line oscillations maxing CPU
2019-11-23 17:27:36 -08:00
sudden6
7475ba4689
chore: remove dead updater code
...
The server for this updater doesn't exist anymore and it wasn't used in years.
2019-11-22 17:17:50 +01:00
Anthony Bilinski
97d8a53692
Merge pull request #5920
...
Mick Sayson (2):
fix(groups): Avoid segfault when resizing group audio window
fix(groups): Correct color of labels in group call
2019-11-22 02:48:37 -08:00
Anthony Bilinski
0055c7760c
fix(ui): fix reversed mute/unmute hover text
2019-11-18 13:56:56 -08:00