Commit Graph

5186 Commits

Author SHA1 Message Date
MumbleTransifexBot
f6aa3cf95b Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-04-11 11:48:59 +02:00
MumbleTransifexBot
9523d0cb5c Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-04-06 21:01:51 +02:00
MumbleTransifexBot
381109e0a3 Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 30 languages
2015-03-30 22:13:46 +02:00
Mikkel Krautz
3223c8aae4 Fix translatability of 'Cycle transmit mode' GlobalShortcut log messages.
This also changes the log message to be equivalent to the one used
by the transmit-switcher toolbar item.

This makes the strings more consistent. This should make both users
and translators happy.
2015-03-22 14:26:33 +01:00
Mikkel Krautz
f05e6571ec Fix typo in speex-build.pro: '../speex-build' instead of '../speex-srcbuild'.
The new 'no_include_pwd' CONFIG option introduced by
d855b67d10 showed us this bug.

Before that commit, OS X *did* include PWD in the INCLUDEPATH
by default. Because of that, the equivalent of '../speex-build'
was *already* in the INCLUDEPATH, because 'speex-build' is the
PWD of the .pro file.

Now that we explicitly require the PWD not to be included, our
own inclusion of 'speex-build' must be spelled correctly to work.

This commit fixes that.
2015-03-22 13:16:50 +01:00
Mikkel Krautz
46fc40e12a Fix Qt 4 build of mach-override to build both x86 and x86-64 binaries.
Without explicitly being told, it only builds x86 binaries (32-bit).
2015-03-22 13:14:53 +01:00
Mikkel Krautz
d855b67d10 Fix config.h issues in 3rdparty caused by new INCLUDEPATH handling in Qt 5.4.1.
This commit fixes an issue caused by a new behavior in Qt 5.4.1 that
causes
PWD to be included in the default INCLUDEPATH on Windows with the nmake/VS
generators.

This new behavior was implemented in the following Qt commit:
qtbase/a90bb5b89a - centralize/unify/sanitize INCLUDEPATH "enrichment")
a90bb5b89a

This is a problem because our codecs in 3rdparty use two distinct
config.h files: one for Win32, and one for everything else.

The Win32 variant lives in the Win32 subdirectory of the build root.
The build root is the directory that will be added automatically by
the new Qt behavior. Typically, the build root has a build suffix,
for example 'speex-build'.

The regular config.h - the one for everything else but Win32 - lives
in the buildroot itself.

This new Qt behavior caused the wrong config.h file to be included
on Windows. Since the build root is now in the INCLUDEPATH,
the config.h file that lives in the build root now takes precedence
over the one in the Win32 directory.

To restore the old behavior for the codec builds, we use Qt config
option called 'no_include_pwd'. That explicitly tells qmake to not
include the PWD in the INCLUDEPATH. This restores the previous
behavior on Windows.

The 'no_include_pwd' config option has been around in Qt for a while.
It was not introduced with the aforementioned change to Qt, so it
doesn't break backwards compatibility for us.
2015-03-22 03:57:45 +01:00
Mikkel Krautz
18c359f82a GlobalShortcut_unix: disable evdev by default.
...and gate it behind the hidden 'shortuct/linux/evdev/enable'
config option.

We don't actively want people to use evdev unless
they really have to (as it requires people to change the
permissions of their keyboard device node to be quite wide-open
to be useful).

Our evdev code has also caused problems for users of
Yubikeys and other gadgets that identify themselves as
keyboards. Those problems should be a thing of the past
with this commit.

Fixes #1145
2015-03-10 15:14:42 +01:00
Mikkel Krautz
6c96ab468f Use 'QSsl::TlsV1_0' on Qt 5.0 through 5.3 and allow 'QSsl::SecureProtocols' to be used on 5.4.X.
Some configurations of Qt 5.X explicitly disable deprecated
parts of the API, such as 'QSsl::TlsV1'. To allow Mumble to build
on those configurations, we have to use 'QSsl::TlsV1_0' instead,
like we did in the prior to 71e522f4c4.

This commit also fixes an issue where QSsl::SecureProtocols was only
selected on the base 5.4.0 release, and not subsequent patch releases.
2015-03-19 14:45:53 +01:00
Mikkel Krautz
71e522f4c4 Use QSsl::TlsV1_0OrLater on Qt 5.5 or later, and QSsl::SecureProtocols on Qt 5.4.
We upstreamed a patch for adding the self-explanatory
QSsl::TlsV1_0OrLater, QSsl::TlsV1_1OrLater and QSsl::TlsV1_2OrLater
enums to QSsl.

Before this, we had a patch in our Qt 5.4 build (on Windows), that
changed the meaning of QSsl::TlsV1_0 to mean "TLSv1.0 or later".
However, that approach wouldn't work in the real world (some setups
require very specific TLS versions), so it was dropped in favour of
the TlsV1_0OrLater and friends.

Since our patch is in Qt 5.5, it means that we now can use
QSsl::TlsV1_0OrLater in the Mumble tree (ifdef'd to QT_VERSION
>= 0x050500), and not break anything for distros.

For Qt 5.4, we can rely on QSsl::SecureProtocols, because Qt 5.4
deprecated SSLv3. Thus, in Qt 5.4, QSsl::SecureProtocols means the
same thing as TlsV1_0OrLater means in Qt 5.5.

Why do we need TlsV1_0OrLater and friends if we have
QSsl::SecureProtocols? Because we don't have a guarantee that
QSsl::SecureProtocols will keep having TLSv1.0 as its minimum
version. The current Mumble protocol requires TLS 1.0.

If something comes up in the future that makes us abandon TLSv1.0,
we'll still handshake it. Rejection can happen at the Mumble protocol
level instead, providing a better user experience.
2015-03-18 23:23:30 +01:00
Tim Cooper
f5affcd43b Better log message when a user disconnects from the same channel as the client. 2015-03-18 20:27:58 +01:00
Tim Cooper
9ba92b584e Add user friendly UserRemove message when disconnecting a ghost user.
This commit adds a user friendly UserRemove message
when a username is reused from the same IP-address.
2015-03-18 20:16:43 +01:00
Tim Cooper
dede31785f Add basic support for sending text messages via GlobalShortcuts. 2015-03-18 19:56:30 +01:00
MumbleTransifexBot
2dde4f5a14 Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 30 languages
2015-03-18 19:41:48 +01:00
Joël Troch
122ed92620 OSInfo: update Windows 10 detection due to kernel version change. 2015-03-18 19:39:38 +01:00
Derrick Dymock
a7dd1b7737 Remove __DATE__ and __TIME__.
This removes the date and time macro to attempt to get us to
reproducible builds. While I do like the date and time included, it
doesn't really add that much value to our users.
2015-03-18 19:01:23 +01:00
Tim Cooper
88aefca1dd Fix protocol documentation for RequestBlob in the .proto file.
Fixes #1494
2015-03-17 20:22:30 +01:00
Tim Cooper
eda74f213a Add protocol buffer comments from the old 'doc' directory to the .proto file. 2015-03-17 20:21:29 +01:00
Tim Cooper
6eecd624f3 Remove 'doc' directory in favour of https://github.com/mumble-voip/mumble-protocol 2015-03-17 20:19:15 +01:00
MumbleTransifexBot
cf49984f6c Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 30 languages
2015-03-17 20:14:55 +01:00
Sami Laine
47889eb3db Add Finnish translation for the installer. 2015-03-17 20:12:35 +01:00
Stefan Hacker
fca6278784 Fix double free in WASAPI no positional audio fallback code-path
Also explicitly NULL pointers handed to getAndCheckMixFormat for clarity.
2015-03-15 22:03:05 +01:00
Stefan Hacker
988eeb5f1a Translation update
Updating 'mumble_en.ts'...
    Found 1600 source text(s) (12 new and 1588 already existing)
    Removed 1 obsolete entries
2015-03-15 03:59:55 +01:00
MumbleTransifexBot
657f9e84b6 Transifex translation
update Mode: default
Minimum percent translated: 0
Matched 30 languages
2015-03-14 23:37:06 +01:00
Stefan Hacker
525995d10f Address review concerns to mix format check changes 2015-03-14 21:55:53 +01:00
Stefan Hacker
5a033b8b9b Simplify and extend mix format check in WASAPI.cpp
Extracted common code for getting the mix format for an
IAudioClient and checking whether it is supported to
separate getAndCheckMixFormat function.

Added support for 16bit PCM besides 32bit IEEE float.
2015-03-09 22:41:12 +01:00
Stefan Hacker
b4f505073a Fix handling of WAVEFORMATEX in WASAPI backend.
As described in #1589 the WASAPI backend made the invalid
assumption that a WAVEFORMATEX struct returned by GetMixFormat
can always be cast to the extended WAVEFORMATEXTENSIBLE type.
This is only true if the wFormatTag of the structure is
WAVE_FORMAT_EXTENSIBLE.

This patch tries to correct all invalid assumptions about this
in the backend by making casting to WAVEFORMATEXTENSIBLE and
access to its extended fields dependant on the correct format
tag being present. If given a pure WAVEFORMATEX structure
workarounds are applied where needed.

As before only IEEE_FLOAT sample formats are supported.
2015-03-09 21:02:47 +01:00
MumbleTransifexBot
d73a2bb696 Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 32 languages
2015-03-09 19:50:37 +01:00
MumbleTransifexBot
bf1667fa98 Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-02-25 23:56:10 +01:00
Stefan Hacker
1c00533b09 Incorrectly assumed SF_FORMAT_* subtypes were flags.
In my patch for #971 I tried to enable clipping for formats that
are not float and not vorbis (which is float by default) but checked
them like they were flags. This caused clipping to never actually
enable for formats whose submask contained at least one bit similar
to either the float or vorbis type.

This patch uses SF_FORMAT_SUBMASK and a straight comparison instead
and should fix this issue.
2015-02-25 23:50:09 +01:00
MumbleTransifexBot
edd5509fc3 Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-02-21 11:22:02 +01:00
MumbleTransifexBot
bdcd5927d6 Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-02-15 14:28:35 +01:00
MumbleTransifexBot
eae371ea35 Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-02-12 21:04:45 +01:00
Mikkel Krautz
f8b63cd53c macx/osax: bump OS X overlay version to 19.
This forces users to reinstall the overlay after
our recent bugfix round.
2015-02-08 16:56:06 +01:00
BuddyButterfly
80f1623b93 PulseAudio: allow monitor devices to be used as inputs.
PulseAudio automatically creates monitors for devices.
These devices were previously explicitly excluded from the
list of input devices by Mumble. Excluding these devices
blocks people from combining multiple streams into Mumble
via PulseAudio.

One possible scenario is listed below:

 Requirement:
  - One wants to combine headset input and sound output
    of a script into mumble.

 Solution:
  - With PulseAudio one creates a virtual sink. Let's
    call it "vscrd1".
  - The headset's input is looped to "vscrd1".
  - The script's audio output is directly directed to
    "vscrd1".
  - Mumble is configured to use the input device
    "vscrd1.monitor"

Now one can talk and send sound to Mumble at the same time.
It also helps much when using sound bots (music etc.).
2015-02-08 16:53:50 +01:00
Mew
bc5852d3dc Implement "mumble rpc" subcommand
This allows users to more easily issue SocketRPC
requests to a running Mumble client.

Currently, only commands for muting/deafning are
supported.

Example:

  $ mumble rpc mute    # Mute a running Mumble client
  $ mumble rpc unmute  # Unmute a running Mumble client
  [...]

Supported commands are currently:

  'mute' - Unmute self
  'unmute' - Unmute self
  'deaf' - Deafen self
  'undeaf' - Undeafen self

(You can also see them via 'mumble rpc --help')
2015-02-08 16:41:53 +01:00
Kyle Smith
44dc94e928 Add optional combobox for transmit mode selection in the MainWindow's toolbar.
Implements feature request SF-1119
2015-02-08 16:09:11 +01:00
MumbleTransifexBot
351547980d Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-02-08 01:27:29 +00:00
MumbleTransifexBot
818e4c9277 Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-02-07 23:29:41 +01:00
MumbleTransifexBot
25414ea8b5 Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-02-07 23:29:36 +01:00
MumbleTransifexBot
2288161a2c Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-02-07 23:29:31 +01:00
MumbleTransifexBot
672eafb940 Transifex translation update
Mode: default
Minimum percent translated: 0
Matched 31 languages
2015-02-07 23:29:25 +01:00
Mikkel Krautz
f0ff84f6c0 Unify overlay code for Unix and OS X.
This commit removes macx/overlay and merges
the OS X overlay into the Unix overlay in
overlay_gl.

Most of the overlay logic is exactly the same,
with most of the differences being in the
initialization code and the addition of few new
messages for the interactive client-in-overlay
feature that the OS X overlay suports.

The initialization code is factored out into
init_unix.c for Unix-likes and init_mac.c
for OS X.

These init files are #included by overlay.c.
That is, they're not separate translation
units. Doing it this way cuts down on the
total LOC count and overall complexity of the
code.

The interactive overlay support is ported
directly from the OS X overlay. It's mostly
a matter of supporting a few new message types:
OVERLAY_MSGTYPE_PID and OVERLAY_MSGTYPE_INTERACTIVE.

The overlay_gl.pro file in this commit is mostly
just a combination of the .pro files of the two
overlays, with a minor difference in the CFLAGS
for the OS X overlay. In old OS X overlay, the
overlay had an ".m" file extension, signalling
that it is an Objective-C source file to the
C compiler. Since the combined overlay has a
".c" extension, "-x objective-c" is added to
CFLAGS on OS X to tell the compiler to compile
the overlay as Objective-C code.
2015-02-07 23:24:47 +01:00
Mikkel Krautz
a5651973d5 Add setting 'asio/enable' to allow users to disable ASIO via the Mumble configuration. 2015-02-07 16:56:53 +01:00
Mikkel Krautz
3293f7ad4c Make 3rdparty/mach-override-src point to mumble-voip/mach_override, and use https instead of ssh. 2015-02-06 00:11:41 +01:00
Mikkel Krautz
1fab580baa Use glDrawArrays instead of immediate mode in OS X's drawOverlay(). 2015-02-05 23:11:28 +01:00
Mikkel Krautz
f4568b9e46 Port 6e9a7e7c to the OS X overlay. 2015-02-05 23:11:28 +01:00
Mikkel Krautz
8e3168b2e7 Port ec7e78d1 to the OS X overlay. 2015-02-05 23:11:28 +01:00
Mikkel Krautz
403aedb35d Add mach_override as a 3rdparty dep and hook it into the OS X overlay.
Prior versions of mach_override were small (a single file),
and we just had its source live in the OS X overlay directory.

Newer versions of mach_override use libudis86, so the file count
goes up a fair bit. So much so that it doesn't make sense to
have it live inside the OS X overlay anymore.

Because of that, this commit moves it into 3rdparty.
2015-02-05 23:11:28 +01:00
dennisschagt
32f327378f Translation update
Updating 'mumble_en.ts'...
    Found 1589 source text(s) (1 new and 1588 already existing)
    Removed 2 obsolete entries
2015-02-05 17:23:12 +01:00