]> source.dussan.org Git - tigervnc.git/log
tigervnc.git
4 years agoMove release cmake stuff to release directory
Pierre Ossman [Thu, 16 Jul 2020 11:38:01 +0000 (13:38 +0200)]
Move release cmake stuff to release directory

It's just confusing when this is split over two directories.

4 years agoTest packaging on Travis
Pierre Ossman [Thu, 16 Jul 2020 11:35:43 +0000 (13:35 +0200)]
Test packaging on Travis

Don't just build things, also test the various packaging.

4 years agoMerge branch 'user-trailing-spaces' of https://github.com/grulja/tigervnc
Pierre Ossman [Fri, 10 Jul 2020 13:11:30 +0000 (15:11 +0200)]
Merge branch 'user-trailing-spaces' of https://github.com/grulja/tigervnc

4 years agoRemove trailing spaces in user name 1056/head
Jan Grulich [Fri, 3 Jul 2020 11:56:35 +0000 (13:56 +0200)]
Remove trailing spaces in user name

It's quite easy to make a mistake and add an additional space when configuring
users in the vncserver.users config file. You will then get an error that the
user doesn't exist and it's hard to spot the mistake. Same applies for a space
before the display number.

4 years agoFix some inappropriate format specifiers
Pierre Ossman [Thu, 18 Jun 2020 12:52:19 +0000 (14:52 +0200)]
Fix some inappropriate format specifiers

A "0x" prefix suggest hexadecimal values, not decimal.

4 years agoFix non-functional MaxDisconnectionTime
Pierre Ossman [Thu, 18 Jun 2020 07:20:17 +0000 (09:20 +0200)]
Fix non-functional MaxDisconnectionTime

Since 8e09912 this wasn't triggered properly as we checked if all
clients were gone before we actually removed the last client from our
list.

4 years agoUpdate gesture unit test to cover angle cornercase
Samuel Mannehed [Mon, 15 Jun 2020 11:41:39 +0000 (13:41 +0200)]
Update gesture unit test to cover angle cornercase

If the difference in angle is larger than 180 degrees we hit a corner
case. This commit modifies the coordinates of an existing test to cover
this.

4 years agoUse hypot(x,y) instead of sqrt(x*x + y*y)
Samuel Mannehed [Mon, 15 Jun 2020 11:38:15 +0000 (13:38 +0200)]
Use hypot(x,y) instead of sqrt(x*x + y*y)

4 years agoMerge branch 'regions' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Mon, 15 Jun 2020 07:57:28 +0000 (09:57 +0200)]
Merge branch 'regions' of https://github.com/CendioOssman/tigervnc

4 years agoImprove names of many gesturehandler unit tests
Samuel Mannehed [Fri, 5 Jun 2020 13:48:25 +0000 (15:48 +0200)]
Improve names of many gesturehandler unit tests

Makes it easier to understand what the tests do.

4 years agoFix typos in comments
Samuel Mannehed [Fri, 5 Jun 2020 13:47:56 +0000 (15:47 +0200)]
Fix typos in comments

4 years agoRemove unnecessary touchEnd from unit tests
Samuel Mannehed [Fri, 5 Jun 2020 13:46:56 +0000 (15:46 +0200)]
Remove unnecessary touchEnd from unit tests

4 years agoAdd proper spacing to if statements
Samuel Mannehed [Thu, 4 Jun 2020 11:22:51 +0000 (13:22 +0200)]
Add proper spacing to if statements

4 years agoAdd constant for TWOTOUCH_TIMEOUT
Samuel Mannehed [Thu, 4 Jun 2020 08:59:04 +0000 (10:59 +0200)]
Add constant for TWOTOUCH_TIMEOUT

4 years agoUpdate Info.plist copyright, added recommended key.
Brian P. Hinz [Sun, 31 May 2020 15:37:32 +0000 (11:37 -0400)]
Update Info.plist copyright, added recommended key.

4 years agoAutomatically pick the correct X.org patch
Mark Mielke [Sat, 15 Dec 2018 15:00:32 +0000 (10:00 -0500)]
Automatically pick the correct X.org patch

Update RPM package build process to automatically detect and apply
the correct X.org patch.

4 years agoMerge branch 'travis' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Sun, 31 May 2020 09:22:27 +0000 (11:22 +0200)]
Merge branch 'travis' of https://github.com/CendioOssman/tigervnc

4 years agoSet up Windows and macOS travis builds 1037/head
Pierre Ossman [Fri, 29 May 2020 14:11:12 +0000 (16:11 +0200)]
Set up Windows and macOS travis builds

4 years agoUse mingw's stdio routines where needed
Pierre Ossman [Sat, 30 May 2020 19:40:39 +0000 (21:40 +0200)]
Use mingw's stdio routines where needed

It allows us to use the more standard format specifiers.

4 years agoDon't catch exceptions by value
Pierre Ossman [Sat, 30 May 2020 19:26:49 +0000 (21:26 +0200)]
Don't catch exceptions by value

4 years agoDon't clear complex objects using memset()
Pierre Ossman [Sat, 30 May 2020 18:54:07 +0000 (20:54 +0200)]
Don't clear complex objects using memset()

This is fine for simple structs but not class based objects.

4 years agoSilence clang deprecated warnings on macOS
Pierre Ossman [Fri, 29 May 2020 16:58:11 +0000 (18:58 +0200)]
Silence clang deprecated warnings on macOS

We still target a very old version of macOS, which tends to make clang
very upset, so we need to turn off depercation warnings.

4 years agoMove pgettext_aux() declaration earlier
Pierre Ossman [Fri, 29 May 2020 16:48:26 +0000 (18:48 +0200)]
Move pgettext_aux() declaration earlier

Some compilers get upset if a declaration comes after the definition.

4 years agoRemove unused variable
Pierre Ossman [Fri, 29 May 2020 14:56:32 +0000 (16:56 +0200)]
Remove unused variable

4 years agoFix JpegCompressor::overrun() type change
Pierre Ossman [Fri, 29 May 2020 14:47:47 +0000 (16:47 +0200)]
Fix JpegCompressor::overrun() type change

The method it overloads got tweaked some time ago, so we need to make
sure this method follows suit.

4 years agoMerge branch 'ack-set-desktop-size' of https://github.com/matt335672/tigervnc
Pierre Ossman [Fri, 29 May 2020 14:49:51 +0000 (16:49 +0200)]
Merge branch 'ack-set-desktop-size' of https://github.com/matt335672/tigervnc

4 years agoSend response for refused SetDesktopSize 1036/head
matt335672 [Thu, 28 May 2020 10:04:03 +0000 (11:04 +0100)]
Send response for refused SetDesktopSize

Sends response for SetDesktopSize as per the community wiki
specification

4 years agoMerge branch 'gesture_handler_v3' of https://github.com/aeneby/tigervnc
Pierre Ossman [Fri, 29 May 2020 13:58:09 +0000 (15:58 +0200)]
Merge branch 'gesture_handler_v3' of https://github.com/aeneby/tigervnc

4 years agoSupport touch gestures on Windows 844/head
Samuel Mannehed [Sat, 28 Mar 2020 20:30:56 +0000 (21:30 +0100)]
Support touch gestures on Windows

This adds the same touch gesture support for Windows as already added
for Unix. Note that it uses Windows gesture detection instead of our own
here though to give the user a familiar experience. Unfortunately that
means we lose the three finger tap.

This also raises the base requirements to Windows 7 as that's when
Windows got proper touch support.

4 years agoImplement touch gesture handling on Unix
Aaron Sowry [Fri, 24 May 2019 00:00:47 +0000 (12:00 +1200)]
Implement touch gesture handling on Unix

Allows the user to perform certain important mouse operations using
touch gestures instead.

4 years agoCancel AltGr timeout on mouse events as well
Samuel Mannehed [Tue, 31 Mar 2020 20:02:21 +0000 (22:02 +0200)]
Cancel AltGr timeout on mouse events as well

We have a timer after Ctrl is pressed in order to see if an Alt will
come right after. Ctrl + Alt is what windows sends for AltGr.
If a key other than Alt was pressed we knew that we could cancel this
timer, this commit extends that to mouse events too.

Since this detection breaks the true order of events we want to make
a decision as fast as possible.

4 years agoImplement X Input pointer handling for Unix
Aaron Sowry [Thu, 25 Apr 2019 00:31:23 +0000 (12:31 +1200)]
Implement X Input pointer handling for Unix

Switch from using Core events to using X Input events for pointer
devices in order to differentiate between mouse events and touch events.

Because FLTK doesn't understand X Input 2, we intercept these events and
translate them to core events where possible.

4 years agoIgnore bogus FL_MOVE events from FLTK
Samuel Mannehed [Tue, 5 May 2020 08:39:13 +0000 (10:39 +0200)]
Ignore bogus FL_MOVE events from FLTK

4 years agoFix position for click and drag with EmulateMB
Alex Tanskanen [Wed, 22 Apr 2020 10:15:06 +0000 (12:15 +0200)]
Fix position for click and drag with EmulateMB

If you have the setting "Emulate middle mouse button" turned on, a click
and drag can fail if it is done very quickly. The position of the
initial click will be incorrect in such a case because the timeout will
delay events.

4 years agoAdd unit tests for EmulateMB
Alex Tanskanen [Thu, 16 Apr 2020 13:38:49 +0000 (15:38 +0200)]
Add unit tests for EmulateMB

4 years agoOpen X11 display properly
Pierre Ossman [Tue, 28 May 2019 06:42:16 +0000 (08:42 +0200)]
Open X11 display properly

We need to make sure everything happens in the correct order during
startup for the X11 display to open correctly. Primarily it means
we need to parse the arguments and open the display before anything
might make any X11 calls, as we may have a -display argument.

4 years agoRemove default config alert
Pierre Ossman [Tue, 28 May 2019 06:41:40 +0000 (08:41 +0200)]
Remove default config alert

We don't exit here, so it's not a fatal error. It's also a fairly common
scenario, so remove the alert completely.

4 years agoReject too large screen resize requests
Pierre Ossman [Sat, 23 May 2020 10:17:55 +0000 (12:17 +0200)]
Reject too large screen resize requests

We'll just crash later if we try to use such a large screen, so reject
the request from the client instead and keep the server running.

4 years agoCatch errors resizing framebuffer
Pierre Ossman [Sat, 23 May 2020 10:17:34 +0000 (12:17 +0200)]
Catch errors resizing framebuffer

4 years agoAdd final line break to FatalError() calls
Pierre Ossman [Sat, 23 May 2020 10:16:50 +0000 (12:16 +0200)]
Add final line break to FatalError() calls

It expects the callers to include this, so make sure we're consistently
providing one.

4 years agoUpdate Indonesian translation
Andika Triwidada [Fri, 15 May 2020 23:53:00 +0000 (06:53 +0700)]
Update Indonesian translation

4 years agoUse exit_vncviewer() for early errors
Pierre Ossman [Tue, 28 May 2019 06:41:04 +0000 (08:41 +0200)]
Use exit_vncviewer() for early errors

Makes things more consistent and avoids surprises.

4 years agoBump up Windows version from Vista to Windows 7
Samuel Mannehed [Fri, 20 Mar 2020 14:43:24 +0000 (15:43 +0100)]
Bump up Windows version from Vista to Windows 7

4 years agoGet rid of magical assignment to Region 1009/head
Pierre Ossman [Fri, 1 May 2020 15:37:04 +0000 (17:37 +0200)]
Get rid of magical assignment to Region

Might as well make these explicit so the cost is apparent.

4 years agoUpdate French translation
Stéphane Aulery [Thu, 7 May 2020 16:11:00 +0000 (18:11 +0200)]
Update French translation

4 years ago[SELinux] Allow vnc_session_t type execute itself 1012/head
Lukas Vrabec [Wed, 6 May 2020 08:55:29 +0000 (10:55 +0200)]
[SELinux] Allow vnc_session_t type execute itself

vncsession-start is running in SELinux vnc_session_t domain because of
"SELinuxContext=system_u:system_r:vnc_session_t:s0" option in systemd
vncserver@.service unit file. vncsession-start executing binary
vncsession with SELinux label/type vnc_session_t. This access was not
allowed in vncsession policy.

4 years agoSwitch region code to pixman
Pierre Ossman [Fri, 1 May 2020 15:18:59 +0000 (17:18 +0200)]
Switch region code to pixman

This is the current upstream so let's make use of it to get the latest
in features and fixes.

4 years agoAlso link in math library in static build
Pierre Ossman [Fri, 1 May 2020 16:52:54 +0000 (18:52 +0200)]
Also link in math library in static build

It's included by default in dynamic builds so we need to make sure it
isn't lost when switching to static.

4 years agoDon't ignore .cmake files
Pierre Ossman [Fri, 1 May 2020 15:18:02 +0000 (17:18 +0200)]
Don't ignore .cmake files

They are new modules and not generated files.

4 years agoAvoid using RegionInit() because of empty rects
Pierre Ossman [Fri, 1 May 2020 13:37:22 +0000 (15:37 +0200)]
Avoid using RegionInit() because of empty rects

It creates an invalid region if given an empty rect. Fortunately
RegionInitBoxes() handles that just fine, so use that instead.

4 years agoStop using legacy region macros
Pierre Ossman [Fri, 1 May 2020 13:30:04 +0000 (15:30 +0200)]
Stop using legacy region macros

We no longer support such old X servers so start using the current
functions.

4 years agoHandle empty changes for every operation
Pierre Ossman [Mon, 20 Apr 2020 06:55:13 +0000 (08:55 +0200)]
Handle empty changes for every operation

It seems like many of the X11 operations can end up with no pixels
actually changing. So instead of discovering and adding workarounds for
each individually we'll just check very region added if it's empty.

4 years agoUpdate Serbian translation
Мирослав Николић [Thu, 2 Apr 2020 17:21:00 +0000 (19:21 +0200)]
Update Serbian translation

4 years agoUpdate Ubuntu patches for current code
Pierre Ossman [Thu, 2 Apr 2020 10:50:37 +0000 (12:50 +0200)]
Update Ubuntu patches for current code

4 years agoUpdate apt cache before running builds
Pierre Ossman [Thu, 2 Apr 2020 10:49:54 +0000 (12:49 +0200)]
Update apt cache before running builds

Otherwise it might fail if the repositories have changed since the image
was generated.

4 years agoRemove legacy Xorg code
Pierre Ossman [Thu, 2 Apr 2020 09:18:00 +0000 (11:18 +0200)]
Remove legacy Xorg code

We now require at least 1.16, so remove all code that handled older
versions than that.

4 years agoRemove 8-bit support from documentation
Pierre Ossman [Thu, 2 Apr 2020 09:04:07 +0000 (11:04 +0200)]
Remove 8-bit support from documentation

We removed support in the code ages ago, but overlooked this part of the
documentation. Also remove some dead code in Xvnc on the same theme.

4 years agoMerge branch 'systemd' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Thu, 2 Apr 2020 08:56:51 +0000 (10:56 +0200)]
Merge branch 'systemd' of https://github.com/CendioOssman/tigervnc

4 years agoDo maximize more properly on macOS
Pierre Ossman [Thu, 26 Mar 2020 08:39:36 +0000 (09:39 +0100)]
Do maximize more properly on macOS

4 years agoDon't resize viewer window when maximized
Pierre Ossman [Tue, 17 Mar 2020 12:54:16 +0000 (13:54 +0100)]
Don't resize viewer window when maximized

Most window managers won't like this, and it tends to provoke bugs in
FLTK, so let's avoid it. It's probably not what the user wants anyway.

4 years agoInclude error code in getaddrinfo() exceptions
Pierre Ossman [Thu, 26 Mar 2020 07:50:17 +0000 (08:50 +0100)]
Include error code in getaddrinfo() exceptions

4 years agoAvoid using insecure variable length arrays
Pierre Ossman [Thu, 26 Mar 2020 07:50:04 +0000 (08:50 +0100)]
Avoid using insecure variable length arrays

4 years agoMerge branch 'unicode_translation' of https://github.com/CendioAlex/tigervnc
Pierre Ossman [Tue, 17 Mar 2020 15:15:39 +0000 (16:15 +0100)]
Merge branch 'unicode_translation' of https://github.com/CendioAlex/tigervnc

4 years agoThrow GAIException() for getaddrinfo errors 973/head
Alex Tanskanen [Tue, 10 Mar 2020 12:33:01 +0000 (13:33 +0100)]
Throw GAIException() for getaddrinfo errors

Created a new subclass of Exception called GAIException() that will
handle error messages from getaddrinfo() instead of letting Exception()
handle it. GAIException() will make use of gai_strerror() to map the
error code to text. On Windows, gai_strerrorW() must be used if the text
is encoded with UTF-8.

4 years agoFix typo in SocketException message
Alex Tanskanen [Thu, 5 Mar 2020 08:35:35 +0000 (09:35 +0100)]
Fix typo in SocketException message

4 years agoMake system error messeges in Windows 10 use UTF-8
Alex Tanskanen [Wed, 4 Mar 2020 09:27:02 +0000 (10:27 +0100)]
Make system error messeges in Windows 10 use UTF-8

The previous error messages did not support Unicode characters. This
commit will use UTF-8 encoding to be able to display error messages in
every language.

4 years agoRemove support for old Xorg versions 838/head
Pierre Ossman [Sat, 1 Feb 2020 10:28:08 +0000 (11:28 +0100)]
Remove support for old Xorg versions

No current distribution ship anything this ancient anyway.

4 years agoUse standard install dir variable names
Pierre Ossman [Fri, 1 Feb 2019 12:24:20 +0000 (13:24 +0100)]
Use standard install dir variable names

This makes our builds directly compatible with most distributions
without packagers/users having to specify extra flags.

4 years agoAdd SELinux policy file for vncsession
Pierre Ossman [Thu, 19 Jul 2018 14:04:23 +0000 (16:04 +0200)]
Add SELinux policy file for vncsession

Running as a service on a SELinux system requires rules so we can
transition to our own context. We also need the proper permissions
to start new user sessions.

4 years agoStart sessions via PAM
Pierre Ossman [Mon, 16 Jul 2018 13:58:06 +0000 (15:58 +0200)]
Start sessions via PAM

This sets up a more correct session as there are key tasks that
need to be performed by PAM. E.g. systemd will allocate cgroups
and start base services.

In order to easily handle this as a system service the mapping of
displays is now done via a configuration file.

4 years agoFix C linking when doing static builds
Pierre Ossman [Mon, 16 Jul 2018 13:57:40 +0000 (15:57 +0200)]
Fix C linking when doing static builds

4 years agoMake PAM mandatory
Pierre Ossman [Wed, 11 Jul 2018 13:49:46 +0000 (15:49 +0200)]
Make PAM mandatory

It is present on all UNIX systems anyway, so let's simplify things.
We will need it for more proper session startup anyway.

4 years agoStop searching for Xvnc
Pierre Ossman [Wed, 11 Mar 2020 15:48:25 +0000 (16:48 +0100)]
Stop searching for Xvnc

Assume we are part of a complete and proper installation and encode the
full expected path in to the vncserver script.

4 years agoStart the sessions using xinit
Pierre Ossman [Tue, 31 Jul 2018 14:06:17 +0000 (16:06 +0200)]
Start the sessions using xinit

It keeps much better track of the X server and startup files than
we can do.

4 years agoMake vncserver always run in the foreground
Pierre Ossman [Wed, 23 Jan 2019 14:29:41 +0000 (15:29 +0100)]
Make vncserver always run in the foreground

We need to be started as a system service for things to work correctly
anyway, so delegate the work of starting and stopping things to the
system service manager (e.g. systemd).

4 years agoStart sessions using session desktop file
Pierre Ossman [Fri, 27 Jul 2018 19:39:01 +0000 (21:39 +0200)]
Start sessions using session desktop file

This is how display managers (e.g. gdm or lightdm) start sessions
and is necessary to get the proper set of environment variables.

4 years agoDon't create a default user config
Pierre Ossman [Fri, 11 Jan 2019 16:08:41 +0000 (17:08 +0100)]
Don't create a default user config

We don't want to create files in the users home directory unless we
have to. Users can read about how this file works in our man pages.

4 years agoDon't accept arbitrary arguments to vncserver
Pierre Ossman [Wed, 23 Jan 2019 13:31:26 +0000 (14:31 +0100)]
Don't accept arbitrary arguments to vncserver

We now have config files for more fine grained control of these
things, so avoid duplicating the functionality.

4 years agoStop unsetting environment variables
Pierre Ossman [Fri, 27 Jul 2018 12:40:17 +0000 (14:40 +0200)]
Stop unsetting environment variables

These might contain values we want if we are start from a proper
environment.

4 years agoAlways install systemd services
Pierre Ossman [Fri, 22 Dec 2017 09:35:29 +0000 (10:35 +0100)]
Always install systemd services

It is the most common init system these days so it should not be
hidden in the contrib/ directory.

This also removes all old SysV files from the contrib packages.

4 years agoAdd default configuration files
Pierre Ossman [Wed, 23 Jan 2019 13:09:35 +0000 (14:09 +0100)]
Add default configuration files

Install some example files to make things more easily discoverable.

4 years agoRemove old distribution packaging
Pierre Ossman [Sat, 1 Feb 2020 10:12:27 +0000 (11:12 +0100)]
Remove old distribution packaging

These are EOL (or soon to be) and we want to start relying on things
present in current distributions.

4 years agoMerge branch 'xorg-server-1.20.7' of https://github.com/lheckemann/tigervnc
Pierre Ossman [Thu, 27 Feb 2020 12:50:38 +0000 (13:50 +0100)]
Merge branch 'xorg-server-1.20.7' of https://github.com/lheckemann/tigervnc

4 years agoFix error check for zlib calls
Pierre Ossman [Thu, 27 Feb 2020 12:35:41 +0000 (13:35 +0100)]
Fix error check for zlib calls

There are multiple "okay" return values, not just Z_OK. Make sure we
don't bail out needlessly.

4 years agoFix framebuffer setup in encperf
Pierre Ossman [Thu, 27 Feb 2020 11:43:47 +0000 (12:43 +0100)]
Fix framebuffer setup in encperf

We adapted to the wrong new callback in a previous commit.

4 years agoProvide dummy output for dummy client connections
Pierre Ossman [Thu, 27 Feb 2020 11:43:05 +0000 (12:43 +0100)]
Provide dummy output for dummy client connections

The CConnection base class wants to be able to write things these days,
so we need to provide it a place to do so.

4 years agoMerge pull request #958 from sequencer/env_userpass
Samuel Mannehed [Fri, 14 Feb 2020 12:28:06 +0000 (13:28 +0100)]
Merge pull request #958 from sequencer/env_userpass

Read username and passwrod from env.

4 years agobug fix for user is NULL 958/head
Jiuyang liu [Mon, 10 Feb 2020 20:50:00 +0000 (20:50 +0000)]
bug fix for user is NULL

4 years agoadd man
Jiuyang liu [Mon, 10 Feb 2020 20:46:10 +0000 (20:46 +0000)]
add man

4 years agoimplement username/password from env.
Jiuyang liu [Thu, 6 Feb 2020 14:48:25 +0000 (14:48 +0000)]
implement username/password from env.

4 years agoxserver: add no-op input thread init function 951/head
Linus Heckemann [Sat, 1 Feb 2020 10:08:26 +0000 (11:08 +0100)]
xserver: add no-op input thread init function

This allows Xvnc to build with xorg-server 1.20.7, which requires OS
layers to implement a ddxInputThreadInit function when configured with
--enable-input-thread (the default).

relevant xorg-server commit: e3f26605d85d987da434640f52646d728f1fe919

4 years agoInclude Carbon when statically linking gettext on macOS
Pierre Ossman [Thu, 30 Jan 2020 13:23:24 +0000 (14:23 +0100)]
Include Carbon when statically linking gettext on macOS

As gettext needs some stuff from Carbon and we don't want to rely on it
being pulled in as a side effect.

4 years agoUpdate copyright year to 2020
Pierre Ossman [Thu, 16 Jan 2020 13:26:48 +0000 (14:26 +0100)]
Update copyright year to 2020

4 years agoMerge branch 'emulateMB' of https://github.com/CendioAlex/tigervnc
Pierre Ossman [Thu, 16 Jan 2020 13:18:50 +0000 (14:18 +0100)]
Merge branch 'emulateMB' of https://github.com/CendioAlex/tigervnc

4 years agoUse sys/time.h on Windows as well
Pierre Ossman [Thu, 16 Jan 2020 13:18:08 +0000 (14:18 +0100)]
Use sys/time.h on Windows as well

Modern MinGW seems to provide this, so simplify things a bit. This also
side steps some of the issue of the windows.h/winsock2.h include
ordering.

4 years agoAdd emulated middle mouse button 942/head
Alex Tanskanen [Mon, 13 Jan 2020 14:23:20 +0000 (15:23 +0100)]
Add emulated middle mouse button

Not every mouse has three buttons e.g. laptops. Some OS might not
have support for middle mouse button emulation.

This commit adds emulation for middle mouse button when pressing both
left and right mouse button simultaneously.

4 years agoRemove "Dismiss menu" from context menu 938/head
Alex Tanskanen [Thu, 9 Jan 2020 15:17:06 +0000 (16:17 +0100)]
Remove "Dismiss menu" from context menu

This was not necessary since you could use ESC key or simply just
clicking outside of the context menu to close the menu.

4 years agoAllow XK_Scroll_Lock when LED state isn't supported
Pierre Ossman [Fri, 3 Jan 2020 12:46:54 +0000 (13:46 +0100)]
Allow XK_Scroll_Lock when LED state isn't supported

Otherwise such clients cannot use Scroll Lock at all, and that is
probably worse than any effects we might get from getting out of sync.

4 years agoClean up initialization of DIBSectionBuffer
Pierre Ossman [Fri, 3 Jan 2020 12:10:20 +0000 (13:10 +0100)]
Clean up initialization of DIBSectionBuffer

We had an unintentional conflict with PixelBuffer::setSize() here.
But we can simplify this further as this initialization is only used
by the subclass DeviceFrameBuffer, and only once.

4 years agoProvide correct dimensions for XShm setup
Pierre Ossman [Mon, 30 Dec 2019 09:50:52 +0000 (10:50 +0100)]
Provide correct dimensions for XShm setup

Since 53f913a we initialize the underlying PixelBuffer with 0x0
dimensions, which means we need to keep more explicit track of what
we are trying to allocate in the setup methods.