]> source.dussan.org Git - tigervnc.git/log
tigervnc.git
2 years agoTigerVNC 1.12.0 1.12-branch v1.12.0
Pierre Ossman [Tue, 9 Nov 2021 07:51:28 +0000 (08:51 +0100)]
TigerVNC 1.12.0

2 years agoUpdate French translation
Stéphane Aulery [Sun, 7 Nov 2021 16:52:00 +0000 (17:52 +0100)]
Update French translation

(cherry picked from commit 8eee7f364ae6f55868e498bcdc02ae0960006c88)

2 years agoIncrease maximum input buffer
Pierre Ossman [Thu, 4 Nov 2021 08:01:08 +0000 (09:01 +0100)]
Increase maximum input buffer

macOS' built in VNC server unfortunately sends the entire monitor in a
single rect, so we need to be prepared to buffer a lot of data in case
the monitor has a large resolution.

(cherry picked from commit 479ec11a2ee29a5321a28118c2d69307d752e216)

2 years agoUpdate Swedish translation
Göran Uddeborg [Tue, 19 Oct 2021 12:58:00 +0000 (14:58 +0200)]
Update Swedish translation

(cherry picked from commit 8d3c279289934ba89bcf20dec34d3a024cba3df9)

3 years agoFix closing reconnect dialog logic
Pierre Ossman [Thu, 14 Oct 2021 10:42:05 +0000 (12:42 +0200)]
Fix closing reconnect dialog logic

If you close the reconnect dialog then we should assume that you want to
close things, not that you want to reconnect. Unfortunately FLTK returns
the first choice when closing the dialog, so that needs to be the
"Cancel" alternative.

(cherry picked from commit 7fe85cd4a7ce89b55662fd445b78d50001bad68a)

3 years agoDon't fail on user CA/CRL problems
Pierre Ossman [Thu, 14 Oct 2021 06:57:08 +0000 (08:57 +0200)]
Don't fail on user CA/CRL problems

The certificates might still be fine using the system trust store, or
the user can make an exception. So let's just log and continue on.

This got very common after 960c7d2 where we now always have a default
value for these settings.

(cherry picked from commit 37f3a8b47f0b17ea1c1cacaf5c048a0bada618d3)

3 years agoSystem certificate load returns number loaded not GNUTLS_E_SUCCESS
Tyson Whitehead [Fri, 1 Oct 2021 22:35:19 +0000 (18:35 -0400)]
System certificate load returns number loaded not GNUTLS_E_SUCCESS

(cherry picked from commit d32ff1c9600f7f19f5fe391ed6c71cc117ab1521)

3 years agoWorkaround options window appearing behind viewer
Samuel Mannehed [Wed, 6 Oct 2021 12:06:22 +0000 (14:06 +0200)]
Workaround options window appearing behind viewer

FLTK's fullscreen_x() function will always put the window on a high
level (NSStatusWindowLevel = 25), even if the window doesn't have focus.
This causes the OptionsDialog to end up behind the DesktopWindow when
the fullscreen function is called. Until we can rest assured that most
people building TigerVNC will use a fixed version of FLTK, we will need
this workaround.

(cherry picked from commit 9023a2ec1823d473f1cfe0b723c8636d8e994e2c)

3 years agoRemove modal property from ServerDialog
Samuel Mannehed [Tue, 5 Oct 2021 14:28:59 +0000 (16:28 +0200)]
Remove modal property from ServerDialog

Modal windows are meant to be child windows such as menus or popups that
are intended to always appear in front of its parent.

Modal FLTK windows without a parent seem to behave strangely on macOS.
Such windows can appear in front of their modal children windows.
When opening OptionsDialog from ServerDialog, it was easy to get to a
broken state by then switching focus back to the ServerDialog. This
would cause the ServerDialog to appear in front, but not be useable as
the options window would still have control of mouse and keyboard.

Additionally, modal windows without parents appear in front of other
normal applications on macOS. This means that the ServerDialog couldn't
be put behind Safari for example.

The fact that ServerDialog was a "modal" window was a bit strange,
seeing as it doesn't have any parent windows. Removing the modal
property from this window causes all the strange-ness to go away.

(cherry picked from commit 86ffb61a3bf220eb60b9b3cb25e5dd90c2e2b18c)

3 years agoOnly grab keyboard when we have focus
Samuel Mannehed [Thu, 23 Sep 2021 14:31:59 +0000 (16:31 +0200)]
Only grab keyboard when we have focus

There was an issue with the new grabs that were introduced in commit
2289342de7222e4ff2483eae95bb9898830e6097. On macOS when running
vncviewer in fullscreen on one monitor, we saw that we sometimes got
resize and fullscreen events when switching the focus away from
vncviewer. With the changes in the commit mentioned above this meant
that we immediately grabbed the keyboard again, thus never releasing it.

Fixes #1332.

(cherry picked from commit 72e94ca93d3ada8fb7f518fa65644d2bc172bd4b)

3 years agoCreate helper function for grabKeyboard conditions
Samuel Mannehed [Thu, 23 Sep 2021 14:31:19 +0000 (16:31 +0200)]
Create helper function for grabKeyboard conditions

(cherry picked from commit d6f4edbbf3e27771d27d8691f7bf0984997bd2e3)

3 years agoUpdate Korean translation
JiYoon Kwon [Sun, 19 Sep 2021 14:07:00 +0000 (23:07 +0900)]
Update Korean translation

(cherry picked from commit cac3849dd5a432826932718c8dd38505f1fd96fb)

3 years agoUpdate Russian translation
Yuri Kozlov [Thu, 16 Sep 2021 04:50:00 +0000 (07:50 +0300)]
Update Russian translation

(cherry picked from commit e3917eea8a70353182a225a98dcc7c484fa7cdba)

3 years agoUpdate Swedish translation
Göran Uddeborg [Wed, 15 Sep 2021 20:39:00 +0000 (22:39 +0200)]
Update Swedish translation

(cherry picked from commit 0dbc8467379930516e0ccee97ee3aa24eeb6c02c)

3 years agoUpdate Chinese (traditional) translation
Yi-Jyun Pan [Wed, 15 Sep 2021 14:22:00 +0000 (22:22 +0800)]
Update Chinese (traditional) translation

(cherry picked from commit f00f01bf9e4ed7e877d2cada940c603bf74de071)

3 years agoUpdate Finnish translation
Lauri Nurmi [Tue, 14 Sep 2021 16:45:00 +0000 (19:45 +0300)]
Update Finnish translation

(cherry picked from commit f2117d1e7f0f9c16a800c1e5ef5b13c089445d83)

3 years agoUpdate Czech translation
Petr Pisar [Sun, 12 Sep 2021 12:54:00 +0000 (14:54 +0200)]
Update Czech translation

(cherry picked from commit cfceea2a6020416568da73f1e136628087087584)

3 years agoUpdate Bulgarian translation
Alexander Shopov [Fri, 10 Sep 2021 10:36:00 +0000 (12:36 +0200)]
Update Bulgarian translation

(cherry picked from commit 62c8f8d92d6afd168cd8d4f45c4199342e23bc34)

3 years agoUpdate Hebrew translation
Yaron Shahrabani [Fri, 10 Sep 2021 07:16:00 +0000 (10:16 +0300)]
Update Hebrew translation

(cherry picked from commit b862e5ddf11b45712db61d06bad43a81cbed3d2d)

3 years agoUpdate German translation
Mario Blättermann [Thu, 9 Sep 2021 16:33:00 +0000 (18:33 +0200)]
Update German translation

(cherry picked from commit 23dcccc1e3ef0c707e92713d43ed3fed0a910b1b)

3 years agoUpdate Ukrainian translation
Yuri Chornoivan [Thu, 9 Sep 2021 09:43:00 +0000 (12:43 +0300)]
Update Ukrainian translation

(cherry picked from commit d9867f201371e4296c308ed8671995af05a346f6)

3 years agoUpdate Indonesian translation
Andika Triwidada [Thu, 9 Sep 2021 08:37:00 +0000 (15:37 +0700)]
Update Indonesian translation

(cherry picked from commit cbbb15945e5b7aef92414432c9e046dd3b816db5)

3 years agoGive all monitor names when mirrored
Pierre Ossman [Thu, 9 Sep 2021 10:24:50 +0000 (12:24 +0200)]
Give all monitor names when mirrored

If a monitor is part of a set of mirrored monitors, then give the name
of all used monitors as we don't know which one the user will most
strongly associate with what they see.

(cherry picked from commit 39086068b97217e76ca3ed0fcae01fabd04b4499)

3 years agoMore user friendly monitor name on Windows
Pierre Ossman [Thu, 9 Sep 2021 11:09:10 +0000 (13:09 +0200)]
More user friendly monitor name on Windows

The device name is very internal and likely of little use to a user.
Instead give the more user friendly string we can get out of the system.

(cherry picked from commit 6a1eaff040cab5984f9928fb2bba1a983f4c2fd0)

3 years agoUse std::string for monitor names
Pierre Ossman [Thu, 9 Sep 2021 10:19:46 +0000 (12:19 +0200)]
Use std::string for monitor names

Makes it a lot easier to deal with the allocation of memory for the
string, avoiding any limits.

(cherry picked from commit 11ae24f1f3fe39c1382c6cb37d3cddeeb757c91c)

3 years agoInline the Windows monitor name code
Pierre Ossman [Thu, 9 Sep 2021 09:05:53 +0000 (11:05 +0200)]
Inline the Windows monitor name code

It's just used in this one place, and isn't very large. Also move things
around a bit to avoid having to define new complex types.

(cherry picked from commit c8af502bd2a50398bf1f4da06b90457150340316)

3 years agoFix corner case in monitor index calculation
Pierre Ossman [Thu, 9 Sep 2021 09:04:21 +0000 (11:04 +0200)]
Fix corner case in monitor index calculation

Fix a bug in the comparison function that could result in the wrong
index being assigned to a monitor. Change the logic to more directly map
to the description.

(cherry picked from commit 72d632673ba4531132fd1cd59c2d0b9966551300)

3 years agoHandle mirrored monitors on X11
Pierre Ossman [Thu, 9 Sep 2021 09:01:47 +0000 (11:01 +0200)]
Handle mirrored monitors on X11

macOS and Windows present mirrored monitors as a single virtual monitor,
but X11 exposes this scenario as two distinct monitors with identical
coordinates. This messes up our logic, and is likely confusing for the
user. So instead we'll ignore any monitors that have identical
coordinates to any already seen monitors.

(cherry picked from commit fb561eb321b36dcf13932c903047ce08e55d67d5)

3 years agoTigerVNC 1.11.90 (1.12.0 beta) v1.11.90
Pierre Ossman [Wed, 8 Sep 2021 08:45:40 +0000 (10:45 +0200)]
TigerVNC 1.11.90 (1.12.0 beta)

3 years agoUpdate translation template file
Pierre Ossman [Wed, 8 Sep 2021 08:35:58 +0000 (10:35 +0200)]
Update translation template file

3 years agoClean up some error strings
Pierre Ossman [Wed, 8 Sep 2021 07:18:57 +0000 (09:18 +0200)]
Clean up some error strings

Try to reuse and split things so that it makes things easier for the
translators.

3 years agoConsistently use exceptions for parameter errors
Pierre Ossman [Wed, 8 Sep 2021 07:11:28 +0000 (09:11 +0200)]
Consistently use exceptions for parameter errors

Clean up the structure around storing and loading parameters and server
history so that failures will always be reported by using exceptions.

3 years agoUse classic FILE I/O for storing server history
Pierre Ossman [Wed, 8 Sep 2021 07:02:11 +0000 (09:02 +0200)]
Use classic FILE I/O for storing server history

Error handling is more straight forward in the C file interface.

3 years agoMerge pull request #1253 from binary-manu/accented-chars
Brian Hinz [Tue, 7 Sep 2021 02:24:24 +0000 (22:24 -0400)]
Merge pull request #1253 from binary-manu/accented-chars

Handle keys reported only by KeyEvent.getExtendedKeyCode

3 years agoClean up global event handler structure
Pierre Ossman [Mon, 6 Sep 2021 08:15:36 +0000 (10:15 +0200)]
Clean up global event handler structure

Let's separate the standard global event handling from the hacky
workarounds, for clarity.

3 years agoRestore FLTK event dispatcher on exit
Pierre Ossman [Mon, 6 Sep 2021 08:14:23 +0000 (10:14 +0200)]
Restore FLTK event dispatcher on exit

3 years agoMerge branch 'fullscreens-added-removed' of https://github.com/x11clone/x11clone
Pierre Ossman [Thu, 2 Sep 2021 14:51:03 +0000 (16:51 +0200)]
Merge branch 'fullscreens-added-removed' of https://github.com/x11clone/x11clone

3 years agoTolerate carriage return in config files
Pierre Ossman [Thu, 2 Sep 2021 14:28:16 +0000 (16:28 +0200)]
Tolerate carriage return in config files

If the file has been transferred from a Windows system then it might
have \r\n line endings instead of \n. Make sure this doesn't leak in to
the parameter values.

3 years agoFix inconsistent line endings in vncviewer configuration file
Meng Dong [Mon, 12 Jul 2021 02:45:11 +0000 (10:45 +0800)]
Fix inconsistent line endings in vncviewer configuration file

3 years agoInclude translations in macOS and Windows builds 1318/head
Pierre Ossman [Fri, 27 Aug 2021 09:15:54 +0000 (11:15 +0200)]
Include translations in macOS and Windows builds

3 years agoDisable dangerous macOS SDK macros
Pierre Ossman [Fri, 27 Aug 2021 09:07:58 +0000 (11:07 +0200)]
Disable dangerous macOS SDK macros

They define macros such as "check()" which causes our code to break as
we have methods with that name.

3 years agoMerge branch 'fb-session-nfs' of https://github.com/zpytela/tigervnc
Pierre Ossman [Thu, 26 Aug 2021 10:10:16 +0000 (12:10 +0200)]
Merge branch 'fb-session-nfs' of https://github.com/zpytela/tigervnc

3 years agoExpose reconnect setting in options dialog
Pierre Ossman [Fri, 23 Jul 2021 11:32:50 +0000 (13:32 +0200)]
Expose reconnect setting in options dialog

3 years agoRetry connection in case of an error
Johannes [Sat, 30 Jan 2021 23:12:50 +0000 (00:12 +0100)]
Retry connection in case of an error

3 years agoMerge branch 'x0-interface-option' of https://github.com/sotho/tigervnc
Pierre Ossman [Fri, 23 Jul 2021 08:33:11 +0000 (10:33 +0200)]
Merge branch 'x0-interface-option' of https://github.com/sotho/tigervnc

3 years agoAdd -interface option to x0vncserver 1300/head
Alexander Elbs [Thu, 22 Jul 2021 15:32:35 +0000 (17:32 +0200)]
Add -interface option to x0vncserver

3 years agoMerge branches 'host-name-max', 'fix-build-viewer-off' and 'fix-case-insensitive...
Pierre Ossman [Fri, 23 Jul 2021 08:02:20 +0000 (10:02 +0200)]
Merge branches 'host-name-max', 'fix-build-viewer-off' and 'fix-case-insensitive-fs' of https://github.com/arichardson/tigervnc

3 years agoKeep ownership of second selection when first is lost
Pierre Ossman [Tue, 20 Jul 2021 14:38:04 +0000 (16:38 +0200)]
Keep ownership of second selection when first is lost

This fixes regression introduced by the extended clipboard extension.
Previously it was possible for the server to hold on to the CLIPBOARD
selection even if another application took ownership of PRIMARY. This is
important to handle the common use case of selecting something in order
to paste over it.

The new request based model doesn't readily support this as we assume
the client has lost its data once we push the new PRIMARY selection to
it. So to handle this we have the maintain a cache of the client's data,
and make sure to fill that cache before we do anything that might cause
the client to lose the data.

3 years agoSimply screen refresh handler
Pierre Ossman [Tue, 20 Jul 2021 12:24:10 +0000 (14:24 +0200)]
Simply screen refresh handler

We only need to check the event type once, and preferably early, and
avoid doing more work than necessary.

3 years agoOnly log error when setting FullScreenSelectedMonitors
Pierre Ossman [Mon, 19 Jul 2021 15:35:29 +0000 (17:35 +0200)]
Only log error when setting FullScreenSelectedMonitors

We don't want the log to spam every time this parameter is used so only
complain from the parses when the value is changed.

3 years agoDon't reference specific variable in class
Pierre Ossman [Mon, 19 Jul 2021 15:31:45 +0000 (17:31 +0200)]
Don't reference specific variable in class

This class is generic and should not reference a specific instance of
it.

3 years agoAvoiding final period in log messages
Pierre Ossman [Mon, 19 Jul 2021 15:28:15 +0000 (17:28 +0200)]
Avoiding final period in log messages

Try to be consistent with existing log messages.

3 years agoClean up style in recent monitor code
Pierre Ossman [Mon, 19 Jul 2021 15:22:43 +0000 (17:22 +0200)]
Clean up style in recent monitor code

Fix some indentation issues and make sure everything* uses CamelCase.

* MonitorArrangement is left as snake_case in order to pretend it is an
  independent FLTK widget class.

3 years agoRefresh MonitorArrangement on configuration change 1295/head
Hugo Lundin [Fri, 16 Jul 2021 14:31:16 +0000 (16:31 +0200)]
Refresh MonitorArrangement on configuration change

MonitorArrangement (in the options dialog) never changes when the system
monitor configuration changes. Therefore, the user can get into a state
where the reality doesn't match what is shown (when a monitor is
added/removed, resolution or position changed etc).

All these changes triggers an event in FLTK
(FL_SCREEN_CONFIGURATION_CHANGED). This commit adds an event handler in
MonitorArrangement and refreshes the widget whenever that event occurs.

Because Fl_Handler does not have a void*-argument (and we must be able
to access the widget from our handler callback) a static set of
instances have been added, which all will receive the events.

3 years agoMerge branch 'selected_monitors' of https://github.com/hugolundin/tigervnc
Pierre Ossman [Fri, 16 Jul 2021 14:10:36 +0000 (16:10 +0200)]
Merge branch 'selected_monitors' of https://github.com/hugolundin/tigervnc

3 years agoAdd monitor description to tooltip 1282/head
Hugo Lundin [Tue, 13 Jul 2021 13:55:54 +0000 (15:55 +0200)]
Add monitor description to tooltip

It might be useful to have more information about a monitor when
configuring its settings in the Options menu. Therefore, this commit
adds support for showing additional information about a monitor
(resolution and platform-specific name).

3 years agoExplicitly choose current monitor
Hugo Lundin [Thu, 15 Jul 2021 11:32:19 +0000 (13:32 +0200)]
Explicitly choose current monitor

There are no guarantees from the WM that calling `fullscreen_screens`
with all monitor indices set to `-1` results in the window's current
monitor being used. Because FullScreenMode uses the word "current"
we want to explicitly ask the WM to use that monitor.

3 years agoAdd fullscreen mode for selected monitors
Hugo Lundin [Tue, 13 Jul 2021 11:58:12 +0000 (13:58 +0200)]
Add fullscreen mode for selected monitors

The user might not always want to use all monitors when in fullscreen
mode, but instead only a few. This commit adds support for configuring
selected monitors from command line, in the config file and graphically
in the options menu.

Because it might be hard to guarantee the consistency of monitor
identifiers coming from third-parties (for example FLTK), it has been
decided to use our own numerical identifier. This identifier is based on
the monitor's positions. The mapping between this identifier and the
indices used by FLTK is done by MonitorIndicesParameter.

3 years agoAdd fullscreen mode parameter
Hugo Lundin [Thu, 15 Jul 2021 10:52:56 +0000 (12:52 +0200)]
Add fullscreen mode parameter

Before this commit, `FullScreen` and `FullScreenAllMonitors` could be
used to configure whether to use the current monitor in fullscreen,
or all monitors in fullscreen.

This commit deprecates `FullScreenAllMonitors` in favour of
`FullScreenMode` (which can either be `current` or `all`). This allows
for additional modes to be added, without the risk of having invalid
states (for example two activate two different fullscreen modes at the
same time).

A new concept has been added; read-only parameters. They are parameters
that will be read, but never written back. This allows for migration
paths to be constructed, where a parameter can be taken to consideration
but then for example be discarded, logged or changed into something else.

This has been used for `FullScreenAllMonitors` to provide a migration
path. On startup of vncviewer, if `FullScreenAllMonitors` is enabled,
`FullScreenMode=all` will be automatically enabled instead. The next
time the configuration file is written to disk, `FullScreenAllMonitors`
will then be removed.

3 years agoCalculate overlay position from window size
Hugo Lundin [Wed, 14 Jul 2021 12:55:56 +0000 (14:55 +0200)]
Calculate overlay position from window size

Previously, it was assumed that all monitors (and especially the primary
monitor, index 0) was inside the window when we calculate the position
of the overlay.

That might not always be the case, for example when using fullscreen
mode over a narrower set of monitors. This commit does so the overlay is
positioned correctly based on the actual window size, instead of what we
expect it to be.

3 years agoRelease displays not enclosed by the window
Hugo Lundin [Fri, 16 Jul 2021 11:26:08 +0000 (13:26 +0200)]
Release displays not enclosed by the window

cocoa_capture_displays it captures all displays enclosed by the
window_rect. If a set of displays were captured, but the configuration of
what monitors to use changed, a second call would only add to the set
of captured displays. Therefore, if the user enabled
FullScreenAllMonitors (all displays captured) and then disabled it (only
one display captured) they would get into a state were monitors not used
for the VNC session still were captured (which on macOS for example,
results in displays being unusable for other things).

This has now been fixed, resulting in monitors outside the window_rect
not being unnecessarily captured.

3 years agoFix priority string when using newer GnuTLS 1293/head
Jan Grulich [Thu, 15 Jul 2021 18:42:16 +0000 (20:42 +0200)]
Fix priority string when using newer GnuTLS

The call of gnutls_set_default_priority_append() expects a normal priority
string, which means it must not start with ':'.

3 years agoCapture all displays inside the viewport (macOS)
Hugo Lundin [Tue, 13 Jul 2021 11:07:41 +0000 (13:07 +0200)]
Capture all displays inside the viewport (macOS)

It was only possible to capture either the current, or all displays
previously. This could become an issue if you want to show a vnc session
over only a selected set of displays, because then we only want to
capture those displays.

The solution in the commit was chosen because it handles all cases - by
looking at what monitors are enclosed by the viewport the implementation
is independent on any configuration, but instead captures the monitors
actually being used.

3 years agoAllow building with -DBUILD_VIEWER=OFF 1290/head
Alex Richardson [Wed, 14 Jul 2021 13:03:43 +0000 (14:03 +0100)]
Allow building with -DBUILD_VIEWER=OFF

Without this change I get CMake errors due to use of ${FLTK_INCLUDE_DIR}
and references to the non-existent vncviewer target.

3 years agoRename Input.h to vncInput.h to fix building on case-insensitive FS 1291/head
Alex Richardson [Wed, 14 Jul 2021 13:13:54 +0000 (14:13 +0100)]
Rename Input.h to vncInput.h to fix building on case-insensitive FS

I am cross-compiling from macOS for a FreeBSD-derived system so my host
file system is case insensitive but the target isn't. Without this change
I get the following warnings which show that the vnc "Input.h" is being
included from mi/mi.h instead of the xserver "input.h":
```
In file included from /Users/alex/cheri/xvnc-server/hw/vnc/Input.c:33:
/Users/alex/cheri/xvnc-server/mi/mi.h:55:10: warning: non-portable path to file '"Input.h"'; specified path differs in case from file name on disk [-Wnonportable-include-path]
#include "input.h"
         ^~~~~~~~~
         "Input.h"
```

3 years agoFix build on systems without HOST_NAME_MAX 1289/head
Alex Richardson [Wed, 14 Jul 2021 13:01:15 +0000 (14:01 +0100)]
Fix build on systems without HOST_NAME_MAX

Some operating systems such as FreeBSD don't define a HOST_NAME_MAX
macro. The portable approach to determine the real host name limit is
calling sysconf(_SC_HOST_NAME_MAX) so do that instead.

3 years agoMerge branch 'utilize-system-wide-crypto' of https://github.com/grulja/tigervnc
Pierre Ossman [Wed, 14 Jul 2021 12:24:08 +0000 (14:24 +0200)]
Merge branch 'utilize-system-wide-crypto' of https://github.com/grulja/tigervnc

3 years agoUtilize system-wide crypto policies 1262/head
Jan Grulich [Mon, 12 Jul 2021 10:43:47 +0000 (12:43 +0200)]
Utilize system-wide crypto policies

3 years agoMerge branch 'xvfb' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Wed, 14 Jul 2021 10:26:46 +0000 (12:26 +0200)]
Merge branch 'xvfb' of https://github.com/CendioOssman/tigervnc

3 years agoRemove vfb references from symbol names 1288/head
Pierre Ossman [Tue, 13 Jul 2021 10:42:56 +0000 (12:42 +0200)]
Remove vfb references from symbol names

Xvnc was originally based on Xvfb, but it's just confusing to keep the
names. So change all prefix to "vnc" instead to clearly mark things as
part of TigerVNC.

3 years agoRemove zaphod mode from Xvnc
Pierre Ossman [Tue, 13 Jul 2021 10:36:10 +0000 (12:36 +0200)]
Remove zaphod mode from Xvnc

It isn't really useful as it behaves just like starting multiple
servers, so remove it in favour of keeping things simple.

3 years agoRemove undocumented -linebias argument
Pierre Ossman [Tue, 13 Jul 2021 08:32:42 +0000 (10:32 +0200)]
Remove undocumented -linebias argument

This is a development flag with no real use, so remove it to clean up
the code.

3 years agoClean up Xvnc screen struct
Pierre Ossman [Tue, 13 Jul 2021 07:44:00 +0000 (09:44 +0200)]
Clean up Xvnc screen struct

Remove stuff we don't use, and get it more in sync with Xvfb for easier
comparison.

3 years agoRemove unused headers
Pierre Ossman [Tue, 13 Jul 2021 07:28:06 +0000 (09:28 +0200)]
Remove unused headers

3 years agoRemove obsolete AIX hack
Pierre Ossman [Mon, 12 Jul 2021 15:35:59 +0000 (17:35 +0200)]
Remove obsolete AIX hack

3 years agoRemove obsolete comment about backing store
Pierre Ossman [Mon, 12 Jul 2021 15:35:44 +0000 (17:35 +0200)]
Remove obsolete comment about backing store

This was removed years ago.

3 years agoRemove CloseScreen() wrapper
Pierre Ossman [Mon, 12 Jul 2021 15:26:54 +0000 (17:26 +0200)]
Remove CloseScreen() wrapper

The memory leak this worked around was fixed in X.org 1.16.

3 years agoDo all RandR init in vncRandRInit()
Pierre Ossman [Mon, 12 Jul 2021 15:15:25 +0000 (17:15 +0200)]
Do all RandR init in vncRandRInit()

Keep everything in one place to make it easier to read.

This also removes the call to RRInit() as that is done implicitly
anyway.

3 years agoUse central SetRootClip()
Pierre Ossman [Mon, 12 Jul 2021 15:03:36 +0000 (17:03 +0200)]
Use central SetRootClip()

There's been a common one since X.org 1.11, so use that instead of our
own copy.

3 years agoRemove Darwin code from Xvnc
Pierre Ossman [Mon, 12 Jul 2021 14:29:55 +0000 (16:29 +0200)]
Remove Darwin code from Xvnc

We don't build for that platform anyway, so this is just a remnant from
Xvfb.

3 years agoHandle X.org patch level features
Pierre Ossman [Sun, 11 Jul 2021 18:59:48 +0000 (20:59 +0200)]
Handle X.org patch level features

With the 1.20.x releases there has been features and API changes even on
patch level versions, so we need to update our macros to handle these as
well.

3 years agoRemove shared memory framebuffer option
Pierre Ossman [Sun, 11 Jul 2021 18:33:07 +0000 (20:33 +0200)]
Remove shared memory framebuffer option

This is a pointless remnant of Xvfb. We never print the id of the shared
memory, so no other application can access this memory anyway.

3 years agoRemove more color map code from Xvnc
Pierre Ossman [Sun, 11 Jul 2021 18:19:10 +0000 (20:19 +0200)]
Remove more color map code from Xvnc

This hasn't been supported or used in many years, so clean out the final
remnants.

3 years agoRemove DDXTIME code
Pierre Ossman [Sun, 11 Jul 2021 18:05:54 +0000 (20:05 +0200)]
Remove DDXTIME code

This hasn't been used since xorg-server 1.1 so get rid of it.

3 years agoCall FatalError() on bad Xvnc arguments
Pierre Ossman [Sun, 11 Jul 2021 17:59:19 +0000 (19:59 +0200)]
Call FatalError() on bad Xvnc arguments

This is consistent with other ddx behaviour.

3 years agoUse CHECK_FOR_REQUIRED_ARGUMENTS() for arg check
Pierre Ossman [Sun, 11 Jul 2021 17:45:11 +0000 (19:45 +0200)]
Use CHECK_FOR_REQUIRED_ARGUMENTS() for arg check

This is what all the other ddx variants use, so do the same in Xvnc to
be consistent.

3 years agoApply Xorg coding style to xvnc.c
Pierre Ossman [Sun, 11 Jul 2021 17:41:34 +0000 (19:41 +0200)]
Apply Xorg coding style to xvnc.c

Makes it easier to compare with upstream files as the formatting will be
the same.

3 years agoRemove #ifdef RENDER
Pierre Ossman [Sun, 11 Jul 2021 17:21:58 +0000 (19:21 +0200)]
Remove #ifdef RENDER

RENDER has been mandatory since xorg-server 1.9, so remove these
checks.

3 years agoMove ddxInputThreadInit() to xvnc.c
Pierre Ossman [Sun, 11 Jul 2021 17:20:48 +0000 (19:20 +0200)]
Move ddxInputThreadInit() to xvnc.c

This should only be in the ddx parts of an X server, and Input.c is used
by libvnc.so as well and can cause conflicts there.

3 years agoRemove Ubuntu rethrow signals patch
Pierre Ossman [Tue, 13 Jul 2021 12:25:23 +0000 (14:25 +0200)]
Remove Ubuntu rethrow signals patch

This was removed from Ubunut's X.org packages years ago, so drop it from
our packing as well.

3 years agoCorrectly handle screen layout with offset
Pierre Ossman [Thu, 17 Jun 2021 13:39:30 +0000 (15:39 +0200)]
Correctly handle screen layout with offset

We miscalculated the screen layout if the geometry had an offset as we
adjusted the real screen layout to account for the offset, but compared
it to the unadjusted geometry.

3 years agoMerge branch 'smooth-edge-scrolling' of https://github.com/ToyKeeper/tigervnc
Pierre Ossman [Wed, 16 Jun 2021 12:13:31 +0000 (14:13 +0200)]
Merge branch 'smooth-edge-scrolling' of https://github.com/ToyKeeper/tigervnc

3 years agoMerge branch 'master' of https://github.com/jasonsikes/tigervnc
Pierre Ossman [Wed, 16 Jun 2021 12:10:47 +0000 (14:10 +0200)]
Merge branch 'master' of https://github.com/jasonsikes/tigervnc

3 years agoAvoid some variable aliasing
Pierre Ossman [Mon, 14 Jun 2021 07:43:10 +0000 (09:43 +0200)]
Avoid some variable aliasing

3 years agoRemove unnecessary header include
Pierre Ossman [Sun, 13 Jun 2021 16:29:40 +0000 (18:29 +0200)]
Remove unnecessary header include

3 years agoUse <user>@<hostname> as the default desktop name
Pierre Ossman [Sun, 13 Jun 2021 16:28:16 +0000 (18:28 +0200)]
Use <user>@<hostname> as the default desktop name

Is a lot more useful default than the previous "x11", or "x0vncserver".
At the same time give x0vncserver a parameter to change the name.

3 years agoClean up default value for X509 parameters
Pierre Ossman [Fri, 11 Jun 2021 15:40:02 +0000 (17:40 +0200)]
Clean up default value for X509 parameters

Let's avoid making this too complex and force every user to know about
magical functions.

3 years agoUse RFC7919-2048 group in GnuTLS for FIPS compliance. 1273/head
JASON SIKES [Sun, 13 Jun 2021 01:45:20 +0000 (18:45 -0700)]
Use RFC7919-2048 group in GnuTLS for FIPS compliance.

3 years agoKeep own memory for duplicate config value
Pierre Ossman [Fri, 11 Jun 2021 15:20:44 +0000 (17:20 +0200)]
Keep own memory for duplicate config value

Allows the default value to be dynamically generated in a buffer that is
reused.

3 years agoRemove unused LogParameter::setDefault()
Pierre Ossman [Fri, 11 Jun 2021 15:20:02 +0000 (17:20 +0200)]
Remove unused LogParameter::setDefault()