Commit Graph

10124 Commits

Author SHA1 Message Date
Robert Adam
264eac3b45
Merge PR #5247: FEAT(client): Warn for pos. audio with mono output
As requested in #5238 this commit adds a warning message in the chat
when positional audio is enabled on mono output device.

Fixes #5238
2022-09-09 11:27:33 +02:00
Robert Adam
70082df9e6 TRANSLATION: Update translation files 2022-09-09 10:04:31 +02:00
Kartik K Khullar
3c77f48cc7 FEAT(client): Warn for pos. audio with mono output
As requested in #5238 this commit adds a warning message in the chat
when positional audio is enabled on mono output device.

Fixes #5238
2022-09-09 10:04:28 +02:00
Robert Adam
a400356548
Merge PR #5837: FIX(client, server): Fix patch versions > 255
Previously, the Mumble version was encoded with a uint32
in the network protocol reserving 2 bytes for the major
component and 1 byte for each minor and patch.
The versioning format was changed to include a build
number in the patch field. With a recent update (1.4.274)
the patch field exceeded 255 for the first time and broke
the protocol version.

This commit completely reworks how the version is stored
internally and transfered with the network protocol.
The new version is a uint64 and consists of 4 fields with
2 bytes each. This allows each version component to reach
up to 65535. Furthermore, all instances of integer version
types have been replaced with the alias Version::full_t for
a better abstraction. Version literals have been replaced by
Version::fromComponents calls.

Fixes #5827
2022-09-08 18:15:59 +02:00
Robert Adam
eeb6886e0c
Merge PR #5858: DOCS: Fix invalid URL in source comment (#5858)
Fixes #2743
2022-09-08 17:11:24 +02:00
Robert Adam
d4a0d1e017 TEST: Add test-cases for new Version impl 2022-09-08 17:09:25 +02:00
Robert Adam
4d6e65c889
Merge PR #5857: CI(github-actions): Use GA to manage stale issues (#5857)
The bots that have been used since, seem to have gotten very unreliable.
2022-09-08 16:34:14 +02:00
Robert Adam
033467b918 DOCS: Fix invalid URL in source comment
Fixes #2743
2022-09-08 16:17:31 +02:00
Robert Adam
2b93ef6bfd CI(github-actions): Use GA to manage stale issues
The bots that have been used since, seem to have gotten very unreliable.
2022-09-08 16:01:34 +02:00
Robert Adam
2031f21d02 BUILD: Make benchmarks compile again 2022-09-08 10:47:53 +02:00
Hartmnt
bacb371f83 REFAC(client, server): Rename uiVersion to m_version
Renames the internal version member variables from "uiVersion"
to "m_version"
2022-09-08 10:47:39 +02:00
Hartmnt
6dd2b31974 TRANSLATION: Update translation files 2022-09-08 10:45:53 +02:00
Hartmnt
79762ce55e FIX(client, server): Fix patch versions > 255
Previously, the Mumble version was encoded with a uint32
in the network protocol reserving 2 bytes for the major
component and 1 byte for each minor and patch.
The versioning format was changed to include a build
number in the patch field. With a recent update (1.4.274)
the patch field exceeded 255 for the first time and broke
the protocol version.

This commit completely reworks how the version is stored
internally and transfered with the network protocol.
The new version is a uint64 and consists of 4 fields with
2 bytes each. This allows each version component to reach
up to 65535. Furthermore, all instances of integer version
types have been replaced with the alias Version::full_t for
a better abstraction. Version literals have been replaced by
Version::fromComponents calls.

Fixes #5827
2022-09-08 10:45:47 +02:00
Davide Beatrici
7e959985ad
Merge PR #5850: FIX(positional-audio): Force 8 bytes alignment for CCameraAngles in GTAV plugin 2022-09-02 19:26:43 +02:00
Davide Beatrici
13c051b36b FIX(positional-audio): Force 8 bytes alignment for CCameraAngles in GTAV plugin
https://en.cppreference.com/w/cpp/language/alignas

This fixes compilation when the implicit alignment is not 8 bytes.

It can be the case with 32 bit targets.
2022-09-01 23:32:57 +02:00
Robert Adam
9740675b87
Merge PR #5846: BUILD: Always build Tracy as static library
This has the advantage of not creating a dependency on the respective
.so/.dll which will be present, even if Tracy support is actually
disabled for the binary. This in turn can cause some issues for
packagers.
2022-08-31 18:10:19 +02:00
Robert Adam
3a5788a365 BUILD: Always build Tracy as static library
This has the advantage of not creating a dependency on the respective
.so/.dll which will be present, even if Tracy support is actually
disabled for the binary. This in turn can cause some issues for
packagers.
2022-08-30 19:13:45 +02:00
Robert Adam
6b84612f63
Merge PR #5843: BUILD(build): Fix -mbig-obj test 2022-08-30 18:42:35 +02:00
0xC0ncord
91a098918c BUILD: Fix -mbig-obj test
Fix a typo in the COMPILER_HAS_MBIG_OBJ test which fixes this failure:

c++: warning: Wa,-mbig-obj: linker input file unused because linking not done
c++: error: Wa,-mbig-obj: linker input file not found: No such file or directory
2022-08-30 11:45:50 -04:00
Robert Adam
6067c4a56e
Merge PR #5820: FIX(client, ui): resolve log text scaling issues
Fixed chat log scaling issue introduced by PR #5619
The bug fixed by that commit is still fixed after this PR, but the
regression introduced has been resolved.

Fixes #5818
2022-08-27 14:29:28 +02:00
Robert Adam
8288c7c0b8
Merge PR #5835: BUILD(appstream): Include release date
Flathub requires this now.

This is done in the same way as the build number.
2022-08-26 14:02:56 +02:00
Jonah Brüchert
a1aa0ff895
BUILD(appstream): Include release date
Flathub requires this now.

This is done in the same way as the build number.
2022-08-26 13:18:46 +02:00
Dexter Gaon-Shatford
ece450aa3d FIX(client, ui): resolve log text scaling issues
Fixed chat log scaling issue introduced by PR #5619 (my fault, whoops)
The bug fixed by that commit is still fixed after this PR, but the
regression introduced has been resolved.

Fixes #5818
2022-08-25 11:22:51 -04:00
Robert Adam
df3e1f1f47
Merge PR #5834: FIX(client, ui): Don't allow manual toggling of minimal view note
In 39047d2 a new note was added for
when a user enters minimal view but is not connected to a server.
Incidentally, this caused the new note to appear in the popup menu
appearing as a context menu when using a custom layout, which in theory
would allow a manual toggling of that note's visibility. However, this
is not what we want and thus this commit makes sure that this popup menu
only contains entries for UI elements that we really want to be manually
toggelable.
2022-08-25 17:18:09 +02:00
Robert Adam
8d5a402644
Merge PR #5822: FIX(ui): Use correct font size for scaling status icons
Previously (#5772), we implemented a fix to set the status icon size
according to the user display scaling. The calculation is based upon
font sizes. However, due to an oversight, the wrong font size was used
as the base for this calculation. However, the problem was not visible,
if by coincidence the correct font size was the same as the one used by
accident.

This commit changes the calculation of the icon size once again to use
the correct font information.

Fixes one part of #5817
2022-08-25 14:18:19 +02:00
Robert Adam
b63429ca39
Merge PR #5833: FIX(client, ui): Make hiding UI elements persistent again
Due to a regression introduced in
6aa8869 when hiding individual UI
components (e.g. the icon toolbar) - possible when using a custom
layout - these elements would re-appear after restarting Mumble (or
after applying the settings or after exiting minimal view).

The reason is that the state of whether or not a given UI component is
shown or not is saved as the window's geometry. In the above commit we
added code that explicitly shows or hides these elements after the
geometry has been restored, thus overwriting the visibility changes of
this geometry restoration.

The fix for this problem is to only explicitly hide the elements when
entering minimal view but let the showing be handled by restoring the
window's geometry. Thus, only those elements are shown again, that have
previously been visible as well (and thus have not been explicitly
hidden by the user).

Fixes #5832
2022-08-25 13:44:12 +02:00
Hartmnt
c97d316273 REFAC(client): Use qt_unique_ptr in UserView for UserDelegate 2022-08-25 11:41:14 +00:00
Hartmnt
a587514c2f FIX(ui): Use correct font size for scaling status icons
Previously (#5772), we implemented a fix to set the status icon size
according to the user display scaling. The calculation is based upon
font sizes. However, due to an oversight, the wrong font size was used
as the base for this calculation. However, the problem was not visible,
if by coincidence the correct font size was the same as the one used by
accident.

This commit changes the calculation of the icon size once again to use
the correct font information.

Fixes one part of #5817
2022-08-25 11:41:07 +00:00
Robert Adam
b3a9fba786 FIX(client, ui): Don't allow manual toggling of minimal view note
In 39047d2a57 a new note was added for
when a user enters minimal view but is not connected to a server.
Incidentally, this caused the new note to appear in the popup menu
appearing as a context menu when using a custom layout, which in theory
would allow a manual toggling of that note's visibility. However, this
is not what we want and thus this commit makes sure that this popup menu
only contains entries for UI elements that we really want to be manually
toggelable.
2022-08-25 13:09:59 +02:00
Robert Adam
203e675ce0 FIX(client, ui): Make hiding UI elements persistent again
Due to a regression introduced in
6aa88691e1 when hiding individual UI
components (e.g. the icon toolbar) - possible when using a custom
layout - these elements would re-appear after restarting Mumble (or
after applying the settings or after exiting minimal view).

The reason is that the state of whether or not a given UI component is
shown or not is saved as the window's geometry. In the above commit we
added code that explicitly shows or hides these elements after the
geometry has been restored, thus overwriting the visibility changes of
this geometry restoration.

The fix for this problem is to only explicitly hide the elements when
entering minimal view but let the showing be handled by restoring the
window's geometry. Thus, only those elements are shown again, that have
previously been visible as well (and thus have not been explicitly
hidden by the user).

Fixes #5832
2022-08-25 12:57:08 +02:00
Robert Adam
2a88501579
Merge PR #5823: FIX(theme): update fallback path for skins
Change the skin fallback path from themes/Mumble to themes/Default
to reflect the change during the integration of the theme submodule.
2022-08-25 12:13:56 +02:00
Dexter Gaon-Shatford
6295fec33c FIX(theme): update fallback path for skins
Change the skin fallback path from `themes/Mumble` to `themes/Default`
to reflect the change during the integration of the theme submodule.
2022-08-22 11:13:42 -04:00
Robert Adam
227d7fcee3
Merge PR #5821: FIX(client): Broken link targets with percent signs
hen sending a link that contains a percent followed by a digit, where
the digit is <= 2 (e.g. %1), the link's target would be messed up as the
respective %x would be treated as an argument replacement specifier by
Qt (and would thus be replaced by some replacement text).

The reason for this lies in the use of two consecutive calls to
QString::arg, where the second call will gladly try to replace any new
replacement specifications introduced with the first replacement.

The solution is to use an overload of QString::arg, that takes both
replacement texts at the same time and applies them in one go. This
specifically allows to ignore any newly introduced replacement
specifications.

The bug has been introduced with the introduction of Markdown support in
2da3f0d but has been masked by a bug
that stopped link recognition at percent signs. This has been fixed in
727049c and since then also appears for
plain links (for markdown-style links using the syntax the bug was
probably present throughout).

Fixes #5819
2022-08-22 17:00:13 +02:00
Robert Adam
8b2905d07d FIX(client): Broken link targets with percent signs
When sending a link that contains a percent followed by a digit, where
the digit is <= 2 (e.g. %1), the link's target would be messed up as the
respective %x would be treated as an argument replacement specifier by
Qt (and would thus be replaced by some replacement text).

The reason for this lies in the use of two consecutive calls to
QString::arg, where the second call will gladly try to replace any new
replacement specifications introduced with the first replacement.

The solution is to use an overload of QString::arg, that takes both
replacement texts at the same time and applies them in one go. This
specifically allows to ignore any newly introduced replacement
specifications.

The bug has been introduced with the introduction of Markdown support in
2da3f0d39e but has been masked by a bug
that stopped link recognition at percent signs. This has been fixed in
727049c526 and since then also appears for
plain links (for markdown-style links using the []() syntax the bug was
probably present throughout).

Fixes #5819
2022-08-22 12:36:01 +02:00
Robert Adam
38701f5f23
Merge PR #5814: MAINT: Extend changelog script
Sometimes backport commits still have a "Merged PR xxx" part in them,
which we have to strip before processing the message. This is exactly
what this commit adds to the existing changelog script.
2022-08-22 12:04:24 +02:00
Robert Adam
459087e13f MAINT: Extend changelog script
Sometimes backport commits still have a "Merged PR xxx" part in them,
which we have to strip before processing the message. This is exactly
what this commit adds to the existing changelog script.
2022-08-21 20:37:43 +02:00
Robert Adam
0ebe49fbef
MAINT: Delete Dockerfile
The official Dockerfile to be used is maintained in a separate repo now:
https://github.com/mumble-voip/mumble-docker
2022-08-20 10:13:13 +02:00
Robert Adam
36eb43aeb4
Merge PR #5776: FEAT(client): Add User and Listener volume slider to context menus
As requested in #4748 this commit implements a volume control
slider for User local volume and Listener local volume in the
relevant context menus for easier reach and quicker adjustments.

The VolumeSliderWidgetAction was implemented as a base class
for UserLocalVolumeSlider and ListenerLocalVolumeSlider which were
then added as QActions in the MainWindow to the context menus qmUser and
qmListener respectively.

The existing LocalVolumeDialogs for users and listeners have been removed.

Additionally, the new generic MenuLabel class was created to be able to
add non-interactive items into QMenus.

Fixes #4748
2022-08-18 18:40:35 +02:00
Hartmnt
1454393c51 TRANSLATION: Update translation files 2022-08-17 19:08:12 +00:00
fgilcc
67be07b9d3 FEAT(client): Add User and Listener volume slider to context menus
As requested in #4748 this commit implements a volume control
slider for User local volume and Listener local volume in the
relevant context menus for easier reach and quicker adjustments.

The VolumeSliderWidgetAction was implemented as a base class
for UserLocalVolumeSlider and ListenerLocalVolumeSlider which were
then added as QActions in the MainWindow to the context menus qmUser and
qmListener respectively.

The existing LocalVolumeDialogs for users and listeners have been removed.

Additionally, the new generic MenuLabel class was created to be able to
add non-interactive items into QMenus.

Co-authored-by: Hartmnt <hartmunt@protonmail.com>
2022-08-17 19:08:04 +00:00
Robert Adam
ce4296d36e
Merge PR #5806: DOCS: Fix typo in murmur.ini 2022-08-17 16:30:32 +02:00
DarkOK
5618dd1cc7
DOCS: Fix typo in murmur.ini
Default, not deault
2022-08-17 14:28:41 +01:00
Robert Adam
ba767c5e2d
Merge PR #5802: MAINT: Fix mumble-build-number.py script
Previously the script would assemble the query URL by taking the
individual parameters literally. However, for certain inputs this could
lead to an invalid URL, resulting in an error 400 (Bad Request) when
attempting to make this query to the server.

In order to avoid these situations, the parameters are now properly
encoded (quoted) before being inserted into the query URL. Thus, we
ensure to always produce valid URLs.
2022-08-14 23:35:24 +02:00
Robert Adam
08ee2ab856 MAINT: Fix mumble-build-number.py script
Previously the script would assemble the query URL by taking the
individual parameters literally. However, for certain inputs this could
lead to an invalid URL, resulting in an error 400 (Bad Request) when
attempting to make this query to the server.

In order to avoid these situations, the parameters are now properly
encoded (quoted) before being inserted into the query URL. Thus, we
ensure to always produce valid URLs.
2022-08-14 23:03:21 +02:00
Robert Adam
8fc359ea3f
Merge PR #5794: FIX(ui): Remove duplicate entry for "What's this?" in UserModel
Removed the duplicate entry for "Talking while being muted on your end"
from the "What's this?" text for users in the TreeView.

Fixes #5793
2022-08-12 19:02:14 +02:00
Hartmnt
bbab696506 FIX(ui): Remove duplicate entry for "What's this?" in UserModel
Removed the duplicate entry for "Talking while being muted on your end"
from the "What's this?" text for users in the TreeView.

Fixes #5793
2022-08-12 14:43:38 +00:00
Robert Adam
cf5582fb21
Merge PR #5766: TRANSLATION: Translations update from Hosted Weblate 2022-08-11 18:29:44 +02:00
Oğuz Ersen
be07b09912 TRANSLATION: Update Turkish translation
Currently translated at 100.0% (2101 of 2101 strings)

Translation: Mumble/Mumble Client
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/tr/
2022-08-11 17:59:10 +02:00
Matthaiks
b2a8c3b478 TRANSLATION: Update Polish translation
Currently translated at 100.0% (2101 of 2101 strings)

Translation: Mumble/Mumble Client
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/pl/
2022-08-11 17:58:40 +02:00
Robert Adam
d673ae4a8a TRANSLATION: Update German translation
Currently translated at 100.0% (2101 of 2101 strings)

Translation: Mumble/Mumble Client
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/de/
2022-08-11 17:58:19 +02:00