1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00
Commit Graph

7658 Commits

Author SHA1 Message Date
Anthony Bilinski
70824729ff
chore(cleanup): don't use 0 as nullptr
Don't add Wzero-as-null-pointer-constant by default, since on older Qt
versions that we stil support and that our CI runs agains, Qt API themselves
cause warnings which lead to build errors all over the place.

Fix #6008
2020-03-21 23:20:03 -07:00
Anthony Bilinski
f756dbae2a
chore(cleanup): don't explicitly initialize std::unique_ptr to nullptr
Fix #6009
2020-03-21 22:15:03 -07:00
Anthony Bilinski
2c1a86482a
chore(style): remove old style casts and cross sign comparisons
Enable warnings for both. Favour casting to signed rather than casting to
unsigend for comparisons. Per isocpp's core guidelines ES.102, signed
arithmetic gives more expected results. If we need one extra bit of range,
using longer signed types achives that.

Fix #6010
Fix #6012
2020-03-21 20:29:10 -07:00
Anthony Bilinski
a7f3495956
fix(chatlog): enable dynamic view range in chatlog with history disabled
Message caching is handled by SessionChatLog in memory even when history is
disabled. ChatLog doesn't need to worry about how the messages its rendering
are being stored. Dynamic loading up and down in chatlog is sitll functional.
2020-03-21 19:41:22 -07:00
Anthony Bilinski
c906cdf57b
fix(history): check history settings when getting initial chatlog idx
Checking if history pointer is valid is not sufficient, the setting must also
be checked. This caused asserts in history when history was disabled in
settings.
2020-03-21 01:45:46 -07:00
sudden6
f13ba3f972
chore(l10n): update translations from Weblate
Alexander Ritter (1):
      feat(l10n): update German translation from Weblate

Allan Nordhøy (2):
      feat(l10n): update Norwegian Bokmål translation from Weblate
      feat(l10n): update Norwegian Bokmål translation from Weblate

Andrey (1):
      feat(l10n): update Russian translation from Weblate

Branko Kovačević (1):
      feat(l10n): update Serbian (latin) translation from Weblate

Dan Baeza (4):
      feat(l10n): update Portuguese (Brazil) translation from Weblate
      feat(l10n): update Italian translation from Weblate
      feat(l10n): update Spanish translation from Weblate
      feat(l10n): update French translation from Weblate

Deleted User (1):
      feat(l10n): update German translation from Weblate

Kristjan Räts (1):
      feat(l10n): update Estonian translation from Weblate

Milo Ivir (1):
      feat(l10n): update Croatian translation from Weblate

Moo (1):
      feat(l10n): update Lithuanian translation from Weblate

Oguz Ersen (1):
      feat(l10n): update Turkish translation from Weblate

Vladimir Studinsky (1):
      feat(l10n): update German translation from Weblate

Xoronic (5):
      feat(l10n): update Dutch translation from Weblate
      feat(l10n): update Dutch translation from Weblate
      feat(l10n): update Dutch translation from Weblate
      feat(l10n): update Dutch translation from Weblate
      feat(l10n): update Dutch translation from Weblate

Zarko Gjurov (1):
      feat(l10n): update Macedonian translation from Weblate

anonymous (5):
      feat(l10n): update Dutch translation from Weblate
      feat(l10n): update Dutch translation from Weblate
      feat(l10n): update Dutch translation from Weblate
      feat(l10n): update Dutch translation from Weblate
      feat(l10n): update Dutch translation from Weblate

kak mi (1):
      feat(l10n): update Chinese (Simplified) translation from Weblate

zaefarani (1):
      feat(l10n): update Persian translation from Weblate

Åke Engelbrektson (1):
      feat(l10n): update Swedish translation from Weblate
2020-03-20 23:50:57 +01:00
sudden6
b5785a1b0c
fix: add missing type for Qt slot
(cherry picked from commit ad139d67c2)
2020-03-20 02:26:22 -07:00
sudden6
df7fe22398
fix(toxcall): move ToxCall ownership to correct Thread
Makes the CoreAV thread own all ToxCalls in order to prevent signals
from being emitted via a Direct connection from Audio to CoreAV.

(cherry picked from commit 6b468e41fa)
2020-03-20 02:26:18 -07:00
Mick Sayson
caf4f59fb2
feat(groups): Allow being in group call if only member
In other applications chatrooms allow you to idle in a call and have
people hop in and out as desired. If a user is the only one presently
online in a group but knows someone will be joining shortly they should
be able to join the call ahead of time.

(cherry picked from commit 46d57c6864)
2020-03-20 02:26:08 -07:00
Anthony Bilinski
9d68be7003
chore: update wording of CI job restart instructions
The tool isn't confused in this case, just cleaning up.

(cherry picked from commit 871b363b6d)
2020-03-20 02:08:01 -07:00
sudden6
f02943c191
fix(toxcall): handle Null sink correctly
This was introduced in 82a4f1b412

(cherry picked from commit bf3921ce94)
2020-03-20 02:07:57 -07:00
sudden6
19e1728495
chore: add instructions to restart nigthly builds
(cherry picked from commit 3d2dbb63b2)
2020-03-20 02:07:53 -07:00
Anthony Bilinski
3a5e28fffb
fix(model): take QObject receiver argument to interface signal connection macro
receiver QObject is used by Qt to automatically deregister the connection when
the receiver is destroyed. Forward it on to Qt's connect.

(cherry picked from commit 24e4ec3751)
2020-03-20 02:07:20 -07:00
Anthony Bilinski
b7062b2518
fix(model): stop interfaces from inheriting from QObject
Qt doesn't support QObject multiple inheritance, so use our existing interface
macros to declare signals in the interface without QObject, and implement them
in child classes.

(cherry picked from commit 82a4f1b412)
2020-03-20 02:07:20 -07:00
Anthony Bilinski
40e43586f1
fix(model): return connection from interface macro
connection is normally returned from Qt's connect, and the caller may want to
track the connection to manually disconnect it.

(cherry picked from commit 41b2b35ce3)
2020-03-20 02:07:19 -07:00
sudden6
dfeca3e906
fix(coreav): prevent racy access to call variable
(cherry picked from commit c507d2665d)
2020-03-20 02:07:19 -07:00
sudden6
26fcea0639
fix(coreav): change some lock to write locks
I missed some cases where data was written.

(cherry picked from commit dfcfb7d5e0)
2020-03-20 02:07:19 -07:00
sudden6
e340688b94
fix(coreav): fix assert because c-toxcore calls from unexpected thread
c-toxcore calls the groupCallCallback from it's main thread instead of
the ToxAV thread as expected, this was triggering an assertion.

Aditionally the destructors of Core and CoreAV were fixed, because they
now either crashed or deadlocked qTox when it was closed while a group
call was still running.

(cherry picked from commit 141cbf8870)
2020-03-20 02:07:18 -07:00
sudden6
723a8e5dc7
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.

(cherry picked from commit 4b9e4a571d)
2020-03-20 02:07:18 -07:00
sudden6
a4ac6d67c7
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.

(cherry picked from commit 9499925fb2)
2020-03-20 02:07:18 -07:00
sudden6
89400c91f7
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.

(cherry picked from commit 98cfe9838f)
2020-03-20 02:07:17 -07:00
sudden6
8e54805e7d
feat(coreav): add assertions to check for threading errors 2020-03-20 02:06:49 -07:00
sudden6
cf402bd11c
refactor(coreav): simplify start sequence
(cherry picked from commit c332cc0cca)
2020-03-20 02:05:47 -07:00
sudden6
f72b3397a5
refactor(coreav): move threading of CoreAV to single mutex
Use a standard mutex instead of trying to build proper locking
ourselfes.

(cherry picked from commit 2bc0057bbd)
2020-03-20 02:05:47 -07:00
Anthony Bilinski
e5a6708877
Merge branch 'v1.17-dev' 2020-03-19 13:21:14 -07:00
sudden6
71b5c50ac6
chore(flatpak): reduce difference to Flathub build
(cherry picked from commit 58ee2feea8)
2020-03-19 13:20:16 -07:00
sudden6
55b1f6af25
fix(flatpak): workaround unstable flathub downloads
works around https://github.com/flathub/flathub/issues/845

(cherry picked from commit 69677831ab)
2020-03-19 13:19:54 -07:00
sudden6
4345fafbc6
Merge pull request #6005
Jimi Huotari (1):
      refactor(Qt): fix build with Qt 5.15
2020-03-19 01:22:31 +01:00
sudden6
ad139d67c2
fix: add missing type for Qt slot 2020-03-17 18:06:21 +01:00
Jimi Huotari
6d51971c6f refactor(Qt): fix build with Qt 5.15
This fixes compile-time warnings about deprecated functions when
building with Qt 5.15.
2020-03-17 13:31:36 +02:00
sudden6
6b468e41fa
fix(toxcall): move ToxCall ownership to correct Thread
Makes the CoreAV thread own all ToxCalls in order to prevent signals
from being emitted via a Direct connection from Audio to CoreAV.
2020-03-17 11:56:56 +01:00
sudden6
58ee2feea8
chore(flatpak): reduce difference to Flathub build 2020-03-16 23:57:59 +01:00
sudden6
69677831ab
fix(flatpak): workaround unstable flathub downloads
works around https://github.com/flathub/flathub/issues/845
2020-03-16 00:28:04 +01:00
sudden6
f2fa601073
fix(chatlog): fix stick to bottom behavior
This commit fixes the behavior when a message is received while the
chatlog is scrolled to the bottom. With this change, the chatlog will
stick to the bottom when it is scrolled all the way down. If it is
somewhere in the middle (e.g. for search) the chatlog will not change
its position.
2020-03-15 16:45:09 +01:00
Anthony Bilinski
0b5f751104
fix(core): message when peer changes group name
boolean inversion in getGroupPeerName caused it to always return empty string

Fix #6001
2020-03-15 01:29:11 -07:00
Anthony Bilinski
564b1eb2a6
Merge branch 'v1.17-dev' 2020-03-05 11:48:09 -08:00
Anthony Bilinski
871b363b6d
chore: update wording of CI job restart instructions
The tool isn't confused in this case, just cleaning up.
2020-03-03 15:06:07 -08:00
sudden6
bf3921ce94
fix(toxcall): handle Null sink correctly
This was introduced in 82a4f1b412
2020-03-03 19:49:13 +01:00
sudden6
7e4f7f0489
fix: remove unused variables 2020-03-03 00:38:53 -08:00
sudden6
1158faee07
chore: update copyright date in About 2020-03-03 00:38:45 -08:00
Maxim Biro
9ca34ab5e8
chore(windows): update VPX to 1.8.2 2020-03-03 00:38:35 -08:00
Maxim Biro
cfe4d4bbb1
chore(windows): update FFmpeg to 4.2.2 2020-03-03 00:38:35 -08:00
Maxim Biro
d6299b6db7
chore(windows): update SQLCipher to 4.3.0 2020-03-03 00:38:35 -08:00
Maxim Biro
14e14e0e26
chore(windows): update Qt to 5.12.7 2020-03-03 00:38:35 -08:00
Maxim Biro
88eba99eb3
chore(travis): update CIRP to v0.2.0 2020-03-03 00:38:28 -08:00
Maxim Biro
e1d1a9fed5
chore(travis): pick any Python 3.x, x>=5 for CIRP 2020-03-03 00:38:28 -08:00
sudden6
3d2dbb63b2
chore: add instructions to restart nigthly builds 2020-03-01 18:16:41 +01:00
sudden6
e67cdadf3d
fix: remove unused variables 2020-03-01 16:59:14 +01:00
sudden6
1f4fee0e4c
chore: update copyright date in About 2020-03-01 00:42:52 +01:00
sudden6
2889ecc09f
Merge pull request #5987
Maxim Biro (2):
      chore(travis): pick any Python 3.x, x>=5 for CIRP
      chore(travis): update CIRP to v0.2.0
2020-02-28 22:59:10 +01:00