Commit Graph

9242 Commits

Author SHA1 Message Date
Hosted Weblate
4e87e8ec9d
TRANSLATION: Update German translation
Currently translated at 98.7% (2018 of 2043 strings)

TRANSLATION: Update German translation

Currently translated at 98.4% (2012 of 2043 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-12 10:26:28 +02:00
Hosted Weblate
466e372fb9
TRANSLATION: Update Dutch translation
Currently translated at 99.9% (2042 of 2043 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-12 10:26:28 +02:00
Hosted Weblate
6af18e319e
TRANSLATION: Update Hungarian translation
Currently translated at 79.1% (1618 of 2043 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-12 10:26:28 +02:00
Hosted Weblate
d1f2ce20f8
TRANSLATION: Update Turkish translation
Currently translated at 100.0% (2043 of 2043 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-12 10:26:28 +02:00
Robert Adam
71c33aad6d
Merge PR #4989: MAINT: Update theme submodule 2021-05-12 10:26:13 +02:00
Robert Adam
4a5dd51487 MAINT: Update theme submodule 2021-05-12 09:07:48 +02:00
Robert Adam
13db7bded8
Merge PR #4983: TRANSLATION: Updates from Weblate 2021-05-11 17:50:19 +02:00
Robert Adam
eb9944a7f9 TRANSLATION: Update translation files 2021-05-11 17:19:19 +02:00
Oğuz Ersen
5c2fc112a8 TRANSLATION: Update Turkish translation
Currently translated at 100.0% (2043 of 2043 strings)

Translation: Mumble/Mumble Client
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/tr/
2021-05-11 17:19:17 +02:00
Hosted Weblate
237c96e6dc TRANSLATION: Update Polish translation
Currently translated at 100.0% (2017 of 2017 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/pl/
Translation: Mumble/Mumble Client
2021-05-11 17:14:40 +02:00
Hosted Weblate
2cbbd43345 TRANSLATION: Update Chinese (Simplified) translation
Currently translated at 100.0% (2017 of 2017 strings)

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-11 17:14:40 +02:00
Hosted Weblate
fcca2fc2cc TRANSLATION: Update Hungarian translation
Currently translated at 79.3% (1600 of 2017 strings)

Co-authored-by: ViBE <vibe@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/hu/
Translation: Mumble/Mumble Client
2021-05-11 17:00:57 +02:00
Robert Adam
ee14f8fe60
Merge PR #4985: FIX(translation): Wrong wording in search dialog 2021-05-11 16:56:50 +02:00
Robert Adam
4dc6715299 TRANSLATION: Update translation files 2021-05-11 15:10:19 +02:00
Robert Adam
40249c57f0 FIX(translation): Wrong wording in search dialog 2021-05-11 15:09:47 +02:00
Robert Adam
8c394b15cd
Merge PR #4967: FEAT(client): Search dialog
This PR introduces a fully featured search dialog.

Note that selections in the search dialog are synchronized with the main
UI and thus "whisper to selection" works by selecting something in the
search dialog as well.

There are also default actions that are executed when a search result is
activated (double-clicked or pressing enter on it). What that action is
exactly, can be configured in the settings.

Furthermore the context menu works as expected when invoked on entries
in the search result list.

In order to disambiguate the results, the full channel hierarchy to the
search result's parent channel is shown below each result.

The search dialog can be toggled via Ctrl+F when Mumble has focus or by
using the new entry in the toolbar. Additionally there is a new global
shortcut that can be configured for this purpose. Note however that on
Windows the SearchDialog won't obtain focus when toggled in a situation
when Mumble does not have focus already.
2021-05-11 13:18:13 +02:00
Robert Adam
f821fa5f9e TRANSLATION: Update translation files 2021-05-11 12:35:51 +02:00
Robert Adam
e59b890c36 FEAT(client): Search dialog
This commit introduces a fully featured search dialog.

Note that selections in the search dialog are synchronized with the main
UI and thus "whisper to selection" works by selecting something in the
search dialog as well.

There are also default actions that are executed when a search result is
activated (double-clicked or pressing enter on it). What that action is
exactly, can be configured in the settings.

Furthermore the context menu works as expected when invoked on entries
in the search result list.

In order to disambiguate the results, the full channel hierarchy to the
search result's parent channel is shown below each result.

The search dialog can be toggled via Ctrl+F when Mumble has focus or by
using the new entry in the toolbar. Additionally there is a new global
shortcut that can be configured for this purpose. Note however that on
Windows the search dialog won't obtain focus when toggled in a situation
when Mumble does not have focus already.
2021-05-11 12:35:24 +02:00
Robert Adam
ae3675d21d
Merge PR #4976: FIX(client): Windows loading/saving shortcuts
This pull request fixes the following issues:

The revamped raw inputs are not saving / loading shortcuts for the Windows client.

Keyboard shortcuts that are outside of the normal range show up as "Unknown"

Fix the shortcuts events not firing for input buttons when the structs were compared using the default memcmp.
2021-05-11 12:34:13 +02:00
Robert Adam
1bf8060d1b FEAT(client): Changed shorcut for channel filtering
The shortcut for toggling channel filters was Ctrl+F. While this makes
sense semantically, this specific shortcut is associated with starting a
search in 99% of all applications out there. Thus using it for something
else does not make for a very smooth user experience.

The new shortcut for filtering is thus set to be Alt+F instead.
2021-05-11 08:58:24 +02:00
Robert Adam
2783265620 FEAT(client): Disable keyboard search in UserView
Before the channel tree (UserView) in the main UI had a "feature" called
keyboard search. If the channel tree had focus and the user started
typing on their keyboard, Mumble would search for an entry in the tree
(either channel or user) that matches the invisibly typed search String.

This is however very impractical for searching as it is unclear if and
when this will expand collapsed entries or how subsequent searches work.
It is not even clear when the current search has ended and thus typing
another letter will start a new one.

And for users who don't expect such an invisible feature, this is a bad
experience as their channel tree selection jumps around wildly if they
accidentally push a key.

The search functionality will be provided by a more robust
implementation in a following commit.
2021-05-11 08:58:24 +02:00
Robert Adam
fb8d6d4881 REFAC(client): Move channel sep. setting to own category
This setting will be needed for other purposes as well and therefore
putting this into the TalkingUI group of settings in no longer
applicable.
2021-05-11 08:58:24 +02:00
Robert Adam
7a482a0aec REFAC(client): Use constant for root channel ID
Instead of implicitly assuming that the root channel has ID 0, there is
now an explicit constant (of the same value) that is used in all places
instead of literal "0" when referring to the root channel's ID.
2021-05-11 08:58:24 +02:00
Robert Adam
cdd37615dd REFAC(client): Move utility functions to own file 2021-05-11 08:58:24 +02:00
Septarius
1a04a17603
REFAC(client): Add comparator operators to Input structs
Fixes InputHid buttons not firing events. For consistency and to prevent hard to track down memcmp issues the other Input structs also have comparators.
This was partially solved by the memory initializations found earlier via lnt-uninitialized-local.

QVariant uses the comparators but defaults to memcmp when they don't exist. memcmp works until you have non-primitives like std::string.
QMetaType::registerComparators requires both the == and < operators for each metatype.

GlobalShortcutEngine::handleButton() has calls to qlButtonList.indexOf() which need comparisons to work properly.
2021-05-10 16:27:14 -06:00
Septarius
273a236fe4
FEAT(client): Show scan code for InputKeyboard
when GetKeyNameText() fails

For keys like F13 - F24 where GetKeyNameText() doesn't have a label.
Use similar technique to the InputMouse to show something other than "Unknown"
2021-05-10 16:18:35 -06:00
Septarius
4834ddef26
FIX(client): lnt-uninitialized-local in GlobalShortcut_win
lnt-uninitialized-local errors were preventing InputKeyboard shortcuts from being detected/fired after relaunch.
When initially setup they would work until the client was relaunched.
2021-05-10 16:15:17 -06:00
Septarius
247fe17dbd
FIX(client): Debug Assertion Failed in getPlugins
Expression: invalid comparator

Thrown when opening the Settings window.
This started happening when I had multiple shortcuts defined and running in debug mode.

std::sort requires strict weak ordering. This fixes the compare to provide it.
2021-05-10 16:15:17 -06:00
Septarius
643377dcd6
REFAC(client): Add and register stream operators
to the Input structs

Step 1 to fix Windows clients loading / saving shortcuts since 3dc7b00d09

Adds the stream operators to the Input structs and a call to register them in Settings.cpp
The metatypes have to be registered in Settings.cpp because it runs before GlobalShortcuts are initialized. Without being registered it will not load the Input buttons.
2021-05-10 16:14:21 -06:00
Robert Adam
003b6c6bb2
Merge PR #4982: FIX(client): Mismatched delete in ProcessResolver 2021-05-10 17:48:52 +02:00
Robert Adam
5d56ec6889 REFAC: ProcessResolver
The new version now uses smart pointers instead of raw new and delete
and also switched to using STL type for its API instead of Qt types.
2021-05-10 14:50:51 +02:00
Robert Adam
f0eee51e81 FIX(client): Mismatched delete in ProcessResolver
The mismatch was caused by using delete instead of delete[] for deleting
pointers allocated via new[];

Fixes #4975
2021-05-10 14:50:51 +02:00
Robert Adam
178d462678 REFAC: Include cstdint instead of stdint.h 2021-05-10 14:50:44 +02:00
Davide Beatrici
8e89110025
Merge PR #4974: FIX(client): Properly show currently selected audio device in settings dialog 2021-05-10 09:13:57 +02:00
Davide Beatrici
4627a833a6 FIX(client): Properly show currently selected audio device in settings dialog
Every audio backend implementation was moving the current device at the top.

This commit replaces that logic by selecting the current device in the combobox.
2021-05-10 08:31:27 +02:00
Robert Adam
6f8d57d904
Merge PR #4978: MAINT(vcpkg): Restore profiledir variable in get_mumble_dependencies.ps1
Removes invalid characters (UTF-16 BOM) at the start of line 6.
The profiledir variable is set properly again. Fixing the vcpkg directory being created in the root of the system directory.
Impact

Anyone that built the vcpkg using get_mumble_dependecies.ps1 should move their vcpkg folder to the userprofile directory before re-running it. If vcpkg doesn't exist under the userprofile directory it will be recreated by the script.
Issue

Original error message below:

$profiledir` : The term '$profiledir' is not recognized as the name of a cmdlet, function, script file, or
operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try
again.
At C:\Dev\Git\mumble\scripts\vcpkg\get_mumble_dependencies.ps1:6 char:1
+ $profiledir = $Env:USERPROFILE
+ ~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: ($profiledir:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException
2021-05-09 21:38:46 +02:00
Robert Adam
69bb6bd60e
Merge PR #4981: REFAC(client): Don't use deprecated mutex ctor
In the latest Qt version, specifying a recrsion mode when creating a
mutex was deprecated in favor of QRecursiveMutex being used for the
cases where recursion is needed.

Given that we only ever needed non-recursive mutexes, all we had to do
was to remove the argument to the ctor.

Ref.: Upstream commit deprecating that ctor:
qt/qtbase@d4b206b

Fixes #4973
2021-05-09 20:14:51 +02:00
Septarius
44e270094c
MAINT(vcpkg): Restore profiledir variable in get_mumble_dependencies.ps1
Removes invalid characters (UTF-16 BOM) at the start of line 6.
The profiledir variable is set properly again. Fixing the vcpkg directory being created in the root of the system directory.

Original error message below:
$profiledir : The term '$profiledir' is not recognized as the name of a cmdlet, function, script file, or
operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try
again.
At C:\Dev\Git\mumble\scripts\vcpkg\get_mumble_dependencies.ps1:6 char:1
+ $profiledir = $Env:USERPROFILE
+ ~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: ($profiledir:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException
2021-05-09 12:03:23 -06:00
Robert Adam
10829c9340 REFAC(client): Don't use deprecated mutex ctor
In the latest Qt version, specifying a recrsion mode when creating a
mutex was deprecated in favor of QRecursiveMutex being used for the
cases where recursion is needed.

Given that we only ever needed non-recursive mutexes, all we had to do
was to remove the argument to the ctor.

Ref.: Upstream commit deprecating that ctor:
d4b206b246

Fixes #4973
2021-05-09 19:30:00 +02:00
Jan Klass
b2798e81d4
Merge PR #4972: TRANSLATION: Add new language Albanian (sq)
as requested by a potential contributor on Weblate
2021-05-09 10:48:19 +02:00
Jan Klass
0dea9d6e82 TRANSLATION: Add new language Albanian (sq) 2021-05-08 18:08:35 +02:00
Jan Klass
2f2ebb7e5b
Merge PR #4965: Translations update from Weblate 2021-05-08 13:21:19 +02:00
Jan Klass
66865e9d18 TRANSLATION: Update translation files 2021-05-08 12:12:13 +02:00
Hosted Weblate
cc7e8b94ef TRANSLATION: Update Hungarian translation
Currently translated at 79.4% (1601 of 2015 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-08 12:03:23 +02:00
Hosted Weblate
9817bbd47b TRANSLATION: Update Italian translation
Currently translated at 100.0% (2015 of 2015 strings)

Co-authored-by: Alessandro Mandelli <mandelli.alessandro@ngi.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/it/
Translation: Mumble/Mumble Client
2021-05-08 12:03:13 +02:00
Hosted Weblate
4b1d952e9e TRANSLATION: Update Japanese translation
Currently translated at 66.4% (1340 of 2017 strings)

Co-authored-by: Yuuto Nakagawa <root@eric-lightning.info>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/ja/
Translation: Mumble/Mumble Client
2021-05-08 12:03:13 +02:00
Hosted Weblate
09fc11b88e TRANSLATION: Update Polish translation
Currently translated at 100.0% (2017 of 2017 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/mumble/mumble-client/pl/
Translation: Mumble/Mumble Client
2021-05-08 12:03:12 +02:00
Hosted Weblate
941250f830 TRANSLATION: Update Turkish translation
Currently translated at 100.0% (2017 of 2017 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
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-08 12:03:12 +02:00
Hosted Weblate
b76ea7feac TRANSLATION: Update Chinese (Simplified) translation
Currently translated at 100.0% (2017 of 2017 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-08 12:03:03 +02:00
Hosted Weblate
f199249948 TRANSLATION: Update Dutch translation
Currently translated at 99.9% (2014 of 2015 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-08 12:02:58 +02:00