Commit Graph

5851 Commits

Author SHA1 Message Date
Robert Adam
2786748084
Merge PR #5069: BUILD(installer): Include binaries only if built
The overlay binaries were expected to be present in any case when the
installer was built. Same goes for the g15-helper binary.

This commit makes sure these binaries are only included if the
respective feature was actually built before.

Fixes #5058
2021-06-02 09:47:39 +02:00
Robert Adam
5b379527da BUILD(installer): Include binaries only if built
The overlay binaries were expected to be present in any case when the
installer was built. Same goes for the g15-helper binary.

This commit makes sure these binaries are only included if the
respective feature was actually built before.

Fixes #5058
2021-06-02 09:08:00 +02:00
Robert Adam
e4dc72b7a4 FIX(client, ui): Use proper name for fallback theme
2cd4635e85 has integrated the theme
submodule into the main repository and by doing so renamed the default
theme from "Mumble" to "Default".

When using no theme (The "None" theme) for the application's style, it
would fail to find the necessary icons though.
This is because the fallback theme that is used in this case was still
referring to the old "Mumble" theme that no longer exists.

This commit fixes the issue by changing the name referenced in the
fallback theme to "Default" again.

Fixes #5086
2021-06-02 08:05:28 +02:00
Robert Adam
fea45e3e92
Merge PR #5064: MAINT: Integrate theme submodule
Instead the theme is now integrated into the main repository as-is. This
facilitates future work on it as we don't have to work across two
repositories.

While we are fiddling with that anyway, I also created an all-new README with (hopefully)
actually useful instructions for how to edit themes.

NOTE: The history of the theme is available in the original repo (mumble-voip/mumble-theme). It was not integrated into this repository as it would flood the git history with a bunch of commits that don't actually change anything.
Therefore we preferred to cut the history out. Should there be the need for that history, the original repo will stay in place dor that reason.
2021-06-01 21:08:33 +02:00
Magnus Groß
b9c7b31c69
REFAC(audiowizard): Do not unnecessarily reset aosSource twice
The restartAudio() call a few lines down will assign nullptr anyway.
2021-06-01 18:53:24 +02:00
Magnus Groß
6b89e08d5b
FIX(audiowizard): Reset AudioOutput ownership before restartAudio()
The AudioOutputPtr ao holds a reference to the audio output. Calling
wipe() only clears the buffers, but the reference still exists.

When we call restartAudio() without ao going out of scope, then
Audio::stop() will loop endlessly as we are waiting for all audio output
references to clear.

We fix this deadlock by explicitly resetting the shared_ptr ao, such
that it doesn't hold a reference anymore when restartAudio() is called.

Fixes #5081
2021-06-01 18:53:11 +02:00
Robert Adam
2cd4635e85 MAINT: Integrate theme submodule
The theme is now integrated into the main repository. This facilitates
future work on it as we don't have to work across two repositories.

The theme is overtaken from https://github.com/mumble-voip/mumble-theme
without any modifications to it. All file from there are copied to this
repo now.

The theme's directory was renamed from "Mumble" to "Default" in order to
a) Make the name more descriptive
b) Avoid conflicts updating already checked out workspaces (git would
report conflicts if the new dir was called the same as the old one)
2021-06-01 08:26:51 +02:00
Magnus Groß
7174b63f62
FIX(pipewire): Do not initialize stream with 0 channels
If we initialize the stream with 0 channels, the call to connect() will
still succeed. In that case the pipewire callback will crash due to zero
division as chunk->stride and pwo->iChannels will be zero.

We fix this by explicitly initializing the channel number with a sane
value.

Fixes #5075
2021-05-31 22:56:57 +02:00
Robert Adam
08270287ee TRANSLATION: Update translation files 2021-05-31 13:54:24 +02:00
John Eskew
6a10b4627f FEAT(client): Add notification thresholding
As requested in #2556, this commit implements the ability to turn off notifications when the server is hosting a number of clients defined by the user.

Implements #2556
2021-05-31 13:54:12 +02:00
Hosted Weblate
efa427a031 TRANSLATION: Update Polish translation
Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 99.9% (2044 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/pl/
Translation: Mumble/Mumble Client
2021-05-31 08:10:20 +02:00
Hosted Weblate
bd18e2249f TRANSLATION: Update Chinese (Simplified) translation
Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Chinese (Simplified) translation

Currently translated at 100.0% (2045 of 2045 strings)

Co-authored-by: CA_GA_64 <xjdzch@126.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: deluxghost <deluxghost@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/zh_Hans/
Translation: Mumble/Mumble Client
2021-05-31 08:10:20 +02:00
Hosted Weblate
c8e05a37e3 TRANSLATION: Update Dutch translation
Currently translated at 100.0% (2045 of 2045 strings)

Co-authored-by: Gert-dev <qnyasgjhapqyuhoibr@kiabws.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/nl/
Translation: Mumble/Mumble Client
2021-05-31 08:10:20 +02:00
Hosted Weblate
3fe4ee86e4 TRANSLATION: Update Russian translation
Currently translated at 99.9% (2043 of 2045 strings)

Co-authored-by: Game one <denis.melnyk.2006@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/ru/
Translation: Mumble/Mumble Client
2021-05-31 08:10:20 +02:00
Hosted Weblate
dc41e09066 TRANSLATION: Update English (United Kingdom) translation
Currently translated at 13.7% (281 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Tomás Correia Marques <tomasmanuelcorreiamarques@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/en_GB/
Translation: Mumble/Mumble Client
2021-05-31 08:10:20 +02:00
Hosted Weblate
4d9275dfd0 TRANSLATION: Update Hungarian translation
Currently translated at 81.4% (1665 of 2045 strings)

TRANSLATION: Update Hungarian translation

Currently translated at 79.7% (1630 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ViBE <vibe@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/hu/
Translation: Mumble/Mumble Client
2021-05-31 08:10:20 +02:00
Hosted Weblate
606907015e TRANSLATION: Update German translation
Currently translated at 99.9% (2043 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 99.9% (2043 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 99.8% (2041 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Robert Adam <dev@robert-adam.de>
Co-authored-by: VfBFan <drop0815@posteo.de>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/de/
Translation: Mumble/Mumble Client
2021-05-31 08:10:20 +02:00
Hosted Weblate
3bb78c72ce TRANSLATION: Update Turkish translation
Currently translated at 100.0% (2045 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Oğuz Ersen <oguzersen@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/tr/
Translation: Mumble/Mumble Client
2021-05-31 08:10:20 +02:00
Hosted Weblate
36a9c9e645 TRANSLATION: Update Korean translation
Currently translated at 87.7% (1795 of 2045 strings)

TRANSLATION: Update Korean translation

Currently translated at 85.5% (1749 of 2045 strings)

TRANSLATION: Update Korean translation

Currently translated at 83.1% (1701 of 2045 strings)

TRANSLATION: Update Korean translation

Currently translated at 81.5% (1668 of 2045 strings)

TRANSLATION: Update Korean translation

Currently translated at 81.4% (1665 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Linmalu(린마루) <gkdwns0103@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/ko/
Translation: Mumble/Mumble Client
2021-05-31 08:10:20 +02:00
Hosted Weblate
2d985302e2 TRANSLATION: Update French translation
Currently translated at 93.0% (1903 of 2045 strings)

TRANSLATION: Update French translation

Currently translated at 93.0% (1903 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maëva Calmettes <maeva.c@protonmail.com>
Co-authored-by: bendem <online+weblate.org@bendem.be>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/fr/
Translation: Mumble/Mumble Client
2021-05-31 08:10:20 +02:00
Robert Adam
0fab63bddb BUILD(cmake): Rename server to mumble-server
The produced binary as well as the used cmake target was renamed from
"murmurd" and "murmur" respectively to "mumble-server".

The installer code was adapted accordingly.
2021-05-30 17:33:23 +02:00
Robert Adam
cc291eee2e
Merge PR #5048: BUILD(windows): Fix missing include
GlobalShortcut_win was using stringstream objects but did not include
the sstream header for it.
2021-05-28 16:49:57 +02:00
Robert Adam
17fb46804e
Merge PR #5029: CHANGE(client): Resize posted images to 800x600 instead of 420x270
For most images, this results in far better legibility, especially if they contain text, such as memes or web comics - you currently need to squint at the screen often, because it's always sized down to 480x270.

People with windows smaller than that will get a horizontal scroll. Scrolling is still better than having an image that's illegible because it's too small, and small images will never be scaled up this way.

800x600 should be okay since 1920x1080 is a very common desktop resolution by now.

This is a stopgap measure until images can be sized per client.
2021-05-28 16:10:58 +02:00
Robert Adam
1d5ce0f2c1 BUILD(windows): Fix missing include
GlobalShortcut_win was using stringstream objects but did not include
the sstream header for it.
2021-05-28 16:07:26 +02:00
Robert Adam
922788bcd8
Merge PR #5038: FEAT(client): Do not play the mute cue when push-to-muted
Push-to-mute requires a constant button press (not togglable), so reminding them that they are muted is not really useful in that case.

The use case that targets is using push-to-mute to talk to another VOIP client (a game for example) with the same people as in the mumble channel. Without this change the user will get the muted cue each time they use push-to-mute.
2021-05-28 08:24:38 +02:00
gileri
f298f0d799
FEAT(client): Do not play the mute cue when push-to-muted
Push-to-mute requires a constant button press (not togglable), so reminding them that they are muted is not really useful in that case.
2021-05-27 13:57:41 +02:00
Davide Beatrici
b68f509376 FIX(client): Positional audio not working properly after canceling audio wizard
The "bPosTest" variable indicates whether we're in the middle of a test.

It causes the user's direction vector to freeze so that it always "looks" straight ahead.

When completing the wizard, accept() is called and thus the variable is set to false again.

However, when the wizard is closed prematurely, reject() is called instead.
2021-05-27 10:32:08 +02:00
Davide Beatrici
ed2cf5c30d REFAC(client): Reorder code in AudioWizard so that reject() matches accept() 2021-05-27 10:30:19 +02:00
Gert-dev
37e1e7b249
REFAC(client): Extract constants for max image width and height
References #4830

Co-authored-by: Robert Adam <dev@robert-adam.de>
2021-05-23 12:41:18 +00:00
Robert Adam
d880a4f3b7 FIX(server, unix): DB corruption due to missing locks
In short: The lock file(s) for the SQLite DB were being discarded as
soon as fork() was called on Unix systems. Thus the DB connection was a
ghost connection and accessing the DB from somewhere else (e.g. CLI)
would likely cause DB corruption because of missing locks.

Because this only happened when calling fork(), Debug builds are
unaffected since they always run in foreground mode which never calls
fork().

The underlying issue here is that an open SQLite connection should
have a read POSIX lock on the database file. Because we were calling
fork() and then _exit() **after** taking out these locks (which was done
when creating the ServerDB object), the locks were being released.
POSIX locks are super easy to get wrong. This is a nice rant about how
they stink: http://0pointer.de/blog/projects/locking.html

Not having a read lock when you have an open connection probably can
cause all kinds of issues, but with WAL it is particularly bad because
the WAL file is deleted when the last connection closes. The server's
connection to the database is like a ghost connection that nobody
knows about, so any CLI (or other server-external) DB access ended up
deleting the WAL file (i.e. committing everything in it to the main
database). Of course, server still had the WAL file opened. Bad things
happen after that.

The fix is making sure that the ServerDB object is created _after_ the
fork happens so that the locks created by SQLite will not have to cross
the process-boundary, causing them to get deleted basically immediately
after they have been created.
2021-05-23 10:42:01 +02:00
Gert
973290070a CHANGE(client): Resize posted images to 800x600 instead of 420x270
For most images, this results in far better legibility, especially if
they contain text, such as memes or web comics - you
currently need to squint at the screen often, because it's always sized
down to 480x270.

People with windows smaller than that will get a horizontal scroll.
Scrolling is still better than having an image that's illegible because
it's too small, and small images will never be scaled up this way.

800x600 should be okay since 1920x1080 is a very common desktop
resolution by now.

This is a stopgap measure until images can be sized per client.

See also #4830.
2021-05-23 00:09:30 +02:00
Hosted Weblate
f05fecbcf0 TRANSLATION: Update Hebrew translation
Currently translated at 71.4% (1462 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/he/
Translation: Mumble/Mumble Client
2021-05-20 08:21:21 +02:00
Hosted Weblate
e324a2e4f1 TRANSLATION: Update Polish translation
Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/pl/
Translation: Mumble/Mumble Client
2021-05-20 08:21:20 +02:00
Hosted Weblate
e881a304cc TRANSLATION: Update Portuguese (Brazil) translation
Currently translated at 93.6% (1916 of 2045 strings)

TRANSLATION: Update Portuguese (Brazil) translation

Currently translated at 93.6% (1916 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kett Lovahr <vagnerlunes@gmail.com>
Co-authored-by: Vitor Sabino Cardoso da SIlva <vitorcsilva180396@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/pt_BR/
Translation: Mumble/Mumble Client
2021-05-20 08:21:20 +02:00
Hosted Weblate
8af7e0da0d TRANSLATION: Update Korean translation
Currently translated at 76.0% (1555 of 2045 strings)

TRANSLATION: Update Korean translation

Currently translated at 71.3% (1459 of 2045 strings)

TRANSLATION: Update Korean translation

Currently translated at 68.8% (1407 of 2045 strings)

TRANSLATION: Update Korean translation

Currently translated at 66.8% (1367 of 2045 strings)

TRANSLATION: Update Korean translation

Currently translated at 65.3% (1337 of 2045 strings)

TRANSLATION: Update Korean translation

Currently translated at 63.9% (1308 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Linmalu(린마루) <gkdwns0103@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/ko/
Translation: Mumble/Mumble Client
2021-05-20 08:20:43 +02:00
Robert Adam
4f314e0e26
Merge PR #5013: CHANGE(client, ui): Display unit as suffix in SpinBox 2021-05-20 08:09:07 +02:00
Robert Adam
e12c05eb12 TRANSLATION: Update translation files 2021-05-19 12:55:37 +02:00
Robert Adam
dac3e5baf4 CHANGE(client, ui): Display unit as suffix in SpinBox
The units of the settings for positional audio were displayed behind the
SpinBox as an additional label.

This commit removes the labels and instead uses the "suffix" field of
the SpinBoxes to display the unit directly in the SpinBox itself.

In principal this also has the potential to fix the issue of the unit
being placed incorrectly when an right-to-left locale is being used as in
that case Qt should put the suffix on the other side.
Note that this has not been verified though.
2021-05-19 12:51:39 +02:00
Septarius
a2624cc017
BUILD(client,unix): #undef conflicting macros
These two QEvents are overridden by the defines in X11 causing unity build errors.
In file included from ../src/mumble/GlobalShortcut_unix.h:13,
...
... /src/mumble/CustomElements.cpp: In member function 'virtual bool ChatbarTextEdit::event(
... /src/mumble/CustomElements.cpp:234:29: error: expected unqualified-id before numeric constant
  234 |  if (evt->type() == QEvent::KeyPress) {
...
... /src/mumble/Log.cpp: In member function 'void LogDocument::finished()':
... /src/mumble/Log.cpp:880:37: error: expected unqualified-id before numeric constant
  880 |      QEvent *e = new QEvent(QEvent::FontChange);
2021-05-18 16:01:07 -06:00
Septarius
0d957eca4d
BUILD(cmake): Only use PRIVATE keyword for target_sources
Moved ${SHARED_HEADERS} from PUBLIC to PRIVATE in target_sources for the main CMakeLists.txt

Rational:
"You don't need to make headers public when using target_sources().
	It should be very rare that you ever need to use anything by[sic] PRIVATE with target_sources().
	One of the few cases where there might be justification for a non-PRIVATE use would be for a header-only (INTERFACE) library.
	Outside of that scenario, I would only use PRIVATE." - Craig Scott
"... Thanks, it works now and the compile time has decreased by 80%." - frozen-void
From: "Unity builds fail for Qt based static libraries" https://gitlab.kitware.com/cmake/cmake/-/issues/20489
Similar discussion here: https://discourse.cmake.org/t/target-sources-and-header-visibility/2096

"The PRIVATE and PUBLIC keywords specify where those corresponding sources should be used.
	PRIVATE simply means those sources should only be added to myLib, whereas PUBLIC means those sources should be added to myLib and to any target that links to myLib.
	...
	In practice, sources will almost always be PRIVATE, since they shouldn't generally be added to anything that links against the target.
	...
	Do not confuse the PRIVATE , PUBLIC and INTERFACE keywords with whether a header is part of the public API for the library or not, the keywords are specifically for controlling which target(s) the sources are added to in this case."
From: https://crascit.com/2016/01/31/enhanced-source-file-handling-with-target_sources/

Error Log:
[237/431] Linking CXX executable tests/TestCrypt
FAILED: tests/TestCrypt
...
... /release/src/shared_autogen/EWIEGA46WW/moc_LogEmitter.cpp:98: multiple definition of 'LogEmitter::metaObject() const';
... /release/src/shared_autogen/EWIEGA46WW/moc_ServerResolver.cpp:98: multiple definition of 'ServerResolver::metaObject() const';
... /release/src/shared_autogen/EWIEGA46WW/moc_LogEmitter.cpp:129: multiple definition of 'LogEmitter::newLogEntry(QString const&)';
... /release/src/shared_autogen/EWIEGA46WW/moc_ServerResolver.cpp:129: multiple definition of 'ServerResolver::resolved()';
... /release/src/shared_autogen/EWIEGA46WW/moc_ServerResolver.cpp:66: multiple definition of 'ServerResolver::qt_static_metacall ...
... /release/src/shared_autogen/EWIEGA46WW/moc_LogEmitter.cpp:67: multiple definition of 'LogEmitter::qt_static_metacall ...
... /release/src/shared_autogen/EWIEGA46WW/moc_ServerResolver.cpp:103: multiple definition of `ServerResolver::qt_metacast ...
... /release/src/shared_autogen/EWIEGA46WW/moc_LogEmitter.cpp:111: multiple definition of `LogEmitter::qt_metacall ...
... /release/src/shared_autogen/EWIEGA46WW/moc_ServerResolver.cpp:111: multiple definition of `ServerResolver::qt_metacall ...
2021-05-18 15:59:54 -06:00
Hosted Weblate
181f41ab6a TRANSLATION: Update Polish translation
Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Polish translation

Currently translated at 100.0% (2045 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/pl/
Translation: Mumble/Mumble Client
2021-05-16 19:20:28 +02:00
Hosted Weblate
02d8c22175 TRANSLATION: Update Chinese (Simplified) translation
Currently translated at 100.0% (2045 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: deluxghost <deluxghost@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/zh_Hans/
Translation: Mumble/Mumble Client
2021-05-16 19:20:28 +02:00
Hosted Weblate
3b69da0162 TRANSLATION: Update Dutch translation
Currently translated at 100.0% (2045 of 2045 strings)

Co-authored-by: Gert-dev <qnyasgjhapqyuhoibr@kiabws.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/nl/
Translation: Mumble/Mumble Client
2021-05-16 19:20:28 +02:00
Hosted Weblate
2467ed5d53 TRANSLATION: Update German translation
Currently translated at 99.9% (2043 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 99.9% (2043 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 99.9% (2043 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 99.9% (2043 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 99.9% (2043 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 99.9% (2043 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 99.9% (2043 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 99.9% (2043 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 99.9% (2043 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Robert Adam <dev@robert-adam.de>
Co-authored-by: Translator <weblate.gledy@aleeas.com>
Co-authored-by: gitgrub <gitgrub.email@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/de/
Translation: Mumble/Mumble Client
2021-05-16 19:20:28 +02:00
Hosted Weblate
5722b05b97 TRANSLATION: Update Turkish translation
Currently translated at 100.0% (2045 of 2045 strings)

TRANSLATION: Update Turkish translation

Currently translated at 100.0% (2045 of 2045 strings)

Co-authored-by: Oğuz Ersen <oguzersen@protonmail.com>
Co-authored-by: udo pton <udopton@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/tr/
Translation: Mumble/Mumble Client
2021-05-16 19:20:28 +02:00
Robert Adam
ad5968cad4 FORMAT: Run clang-format 10 on all source files 2021-05-16 18:40:34 +02:00
Robert Adam
05db5fe6fc
Merge PR #5003: FIX(server): ChannelListener IDs colliding across VServers
As the ChannelListener feature was implemented via a Singleton class,
there was only ever a single, global instance keeping track of listeners.
If however there were multiple VServers running from within a single
Mumble server instance, all of them would use the same ChannelListener
instance. That allowed for user-IDs to collide across different VServers
when it came to listener-management.

Thus listeners could appear/disappear seemingly at random whenever a
user on a different VServer (with the same session ID on that server)
changed their listeners.

Fixes #4366
2021-05-16 17:33:51 +02:00
Hosted Weblate
87df9ff889
TRANSLATION: Update Polish translation
Currently translated at 100.0% (2045 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/pl/
Translation: Mumble/Mumble Client
2021-05-16 16:52:02 +02:00
Hosted Weblate
edc34f55fa
TRANSLATION: Update German translation
Currently translated at 98.7% (2019 of 2045 strings)

TRANSLATION: Update German translation

Currently translated at 98.7% (2019 of 2045 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Robert Adam <dev@robert-adam.de>
Co-authored-by: Thomas Umbach <thum@vikings.net>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/de/
Translation: Mumble/Mumble Client
2021-05-16 16:52:01 +02:00
Robert Adam
f518ad8018 FIX(server): ChannelListener IDs colliding across VServers
As the ChannelListener feature was implemented via a Singleton class,
there was only ever a single, global instance keeping track of listeners.
If however there were multiple VServers running from within a single
Mumble server instance, all of them would use the same ChannelListener
instance. That allowed for user-IDs to collide across different VServers
when it came to listener-management.

Thus listeners could appear/disappear seemingly at random whenever a
user on a different VServer (with the same session ID on that server)
changed their listeners.

Fixes #4366
2021-05-16 16:21:25 +02:00