]>
source.dussan.org Git - tigervnc.git/log
Pierre Ossman [Wed, 7 Mar 2018 14:33:42 +0000 (15:33 +0100)]
Fix indentation in XDesktop.cxx
It wasn't properly updated in
3112f50 when it was split off from
x0vncserver.cxx.
Michal Srb [Fri, 29 Sep 2017 12:47:56 +0000 (14:47 +0200)]
Unset pixel buffer when x0vncserver client disconnects.
In XDesktop::start() we allocate pixel buffer and set it as the backend to the given VNCServer.
In XDesktop::stop() we deallocate the buffer, so we must unset it from the VNCServer as well.
Otherwise the VNCServer could try to access it and crash, for example in deferred update.
Michal Srb [Fri, 29 Sep 2017 12:45:33 +0000 (14:45 +0200)]
VNCServerST: Allow unsetting pixel buffer.
Originally calling VNCServertST::setPixelBuffer(PixelBuffer* pb_) with pb_=0 would do nothing.
With this change pb will be set to 0 and deferred update timer will be stopped.
Pierre Ossman [Thu, 1 Mar 2018 13:11:39 +0000 (14:11 +0100)]
Fix rounding error in pixel down conversion
Simple shifting can give noticable rounding errors if there is a large
difference in the number of bits between the formats. Do the proper
thing via a lookup table, the same way things are done for up conversion.
Pierre Ossman [Thu, 1 Mar 2018 13:00:06 +0000 (14:00 +0100)]
Fix calculation of conversion test target values
Bit shifting gives an approximate, but not properly accurate value
when upconverting. Do a proper calculation.
Pierre Ossman [Tue, 27 Feb 2018 14:55:44 +0000 (15:55 +0100)]
Check for TrueColor support in x0vncserver
Colour map support was removed in
b6b4dc6 , but x0vncserver didn't
properly check if the X server required it.
Pierre Ossman [Tue, 27 Feb 2018 14:31:20 +0000 (15:31 +0100)]
Merge branch 'escape-opts' of https://github.com/olivergondza/tigervnc
Pierre Ossman [Mon, 26 Feb 2018 16:08:34 +0000 (17:08 +0100)]
Merge branch 'congestion' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Mon, 26 Feb 2018 16:00:28 +0000 (17:00 +0100)]
Fix incorrect numbers in performance debug graph
Copy paste errors/brain fart:
- Pixels do not need a factor 8 for any conversion
- Multiplying bytes by 8 gives bits, so lower case 'b', and bits
use SI prefixes, not IEC
Oliver Gondža [Thu, 8 Feb 2018 16:12:11 +0000 (17:12 +0100)]
Make sure auth argument is escaped
Samuel Mannehed [Thu, 8 Feb 2018 15:55:23 +0000 (16:55 +0100)]
Update visible copyright year to 2018
Pierre Ossman [Mon, 5 Feb 2018 12:04:07 +0000 (13:04 +0100)]
Fix for RENDER hooks on Xorg < 1.12
TriFan and TriStrip were added in 1.12, so we need to have that code
conditional to support older versions of Xorg.
Pierre Ossman [Mon, 5 Feb 2018 10:01:22 +0000 (11:01 +0100)]
Add overlooked parameters to Xvnc and x0vncserver man pages
There were a bunch of parameters that weren't properly added to the
man pages when the features were added. Make sure everything is
properly in sync.
Pierre Ossman [Mon, 5 Feb 2018 09:47:27 +0000 (10:47 +0100)]
Sync x0vncserver and Xvnc man pages
They share a lot of settings, so make sure the documentation is
identical in those cases.
Pierre Ossman [Mon, 5 Feb 2018 09:46:18 +0000 (10:46 +0100)]
Remove DeferUpdate from man pages
The funcationality was removed in
6e49e95 , so let's also clean up
the documentation referring to it.
Pierre Ossman [Wed, 31 Jan 2018 14:25:57 +0000 (15:25 +0100)]
Merge branch 'readme-rst' of https://github.com/x11clone/x11clone
Peter Åstrand (astrand) [Wed, 29 Nov 2017 08:11:29 +0000 (09:11 +0100)]
Rename README.txt to README.rst and convert to reStructuredText
Francisco Javier Serrador [Sat, 27 Jan 2018 00:38:00 +0000 (01:38 +0100)]
Update Spanish translation
Peter Åstrand (astrand) [Mon, 29 Jan 2018 09:42:44 +0000 (10:42 +0100)]
Don't parse FLTK arguments using Fl::arg; handle -display as other options
Fl::arg accepts several arguments which we are not documenting. Also,
it accepts a -geometry argument, which clashes with our own -geometry
option.
Pierre Ossman [Tue, 23 Jan 2018 10:55:18 +0000 (11:55 +0100)]
Hook remaining XRender operations
We had overlooked a few so we didn't track all screen changes properly.
Pierre Ossman [Mon, 22 Jan 2018 14:12:41 +0000 (15:12 +0100)]
Update UI look on macOS
macOS no longer uses the old Aqua look, so tweak our things to fit
in better with the current state of things.
Brian P. Hinz [Wed, 17 Jan 2018 04:35:25 +0000 (23:35 -0500)]
Restore menukey function to java viewer
Menukey was broken by recent refactoring of OptionsDialog
Brian P. Hinz [Mon, 1 Jan 2018 22:24:20 +0000 (17:24 -0500)]
Fixes for erros in java hextile/zrle decoders
Various errors exposed when connecting to RealVNC servers
on alternative platforms (ARM, SPARC). SSLEngineManager
was also cleaned up but most of the changes are cosmetic.
Peter Åstrand (astrand) [Mon, 15 Jan 2018 14:17:39 +0000 (15:17 +0100)]
Use XShmGetImage for large reads
XShmGetImage is much faster. On my machine, this reduces the CPU usage
of a fullscreen Youtube video playback from 40% to 25%.
Peter Åstrand (astrand) [Mon, 15 Jan 2018 07:27:19 +0000 (08:27 +0100)]
Use current server time for XUngrabPointer
Similar to
841e9f32d5952d6f16f67294c2da8bf395066a9b but for the
pointer. Fixes a problem where the desktop environment is unresponsive
(to the mouse) after fullscreen exit; Fixes #579.
Peter Åstrand (astrand) [Tue, 9 Jan 2018 08:34:58 +0000 (09:34 +0100)]
My copyright was listed twice, fixed
Pierre Ossman [Thu, 7 Dec 2017 14:21:45 +0000 (15:21 +0100)]
Merge branch 'fatal' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Thu, 7 Dec 2017 14:17:58 +0000 (15:17 +0100)]
Adjust dimensions for rotated monitors
We need to flip the dimensions in the case the monitor is rotated
90° or they won't map correctly to the framebuffer.
Pierre Ossman [Thu, 7 Dec 2017 14:16:54 +0000 (15:16 +0100)]
Make VNC extension startup mandatory
No longer tolerate loading the VNC extension but not being able to
initialize it. This avoids a lot of error prone checking to see
if the extension has started fully or not.
Pierre Ossman [Thu, 7 Dec 2017 13:55:54 +0000 (14:55 +0100)]
Call FatalError on fatal exceptions
Brian P. Hinz [Fri, 1 Dec 2017 02:23:46 +0000 (21:23 -0500)]
Display security state when asking for password (java)
Brian P. Hinz [Fri, 1 Dec 2017 02:14:25 +0000 (21:14 -0500)]
Move UserPasswordGetter out of CConn
Pierre Ossman [Mon, 27 Nov 2017 09:17:40 +0000 (10:17 +0100)]
Fix secure/insecure images
They were converted at the wrong resolution, and FLTK chokes on color
names so make sure all colors are specified in hex.
Brian P. Hinz [Sun, 26 Nov 2017 17:15:01 +0000 (12:15 -0500)]
Update package dependencies for Ubuntu Trusty
Pierre Ossman [Fri, 24 Nov 2017 11:34:28 +0000 (12:34 +0100)]
Stop using CopyRect in WinVNC
It cannot keep itself in sync with the actual screen contents well
enough for CopyRect to work accurately. Graphical glitches could
be seen in some cases.
Pierre Ossman [Fri, 17 Nov 2017 13:43:34 +0000 (14:43 +0100)]
Merge branch 'pause' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 11 Mar 2016 08:38:08 +0000 (09:38 +0100)]
Add crude congestion window debug trace
Allows us to compare our computed congestion window with the
underlying one used by the TCP layer.
Pierre Ossman [Mon, 21 Dec 2015 06:59:20 +0000 (07:59 +0100)]
Add simple slow start to congestion control
Pierre Ossman [Sun, 13 Dec 2015 14:43:46 +0000 (15:43 +0100)]
Improved congestion control handling
Refine the previous method by interpolating the values we need.
This reduces the effect of the problem that we cannot send enough
ping packets.
Pierre Ossman [Fri, 11 Dec 2015 19:23:17 +0000 (20:23 +0100)]
Move congestion control to its own class
It's a general function and it's better to have that particular
complexity in its own place.
Pierre Ossman [Fri, 11 Dec 2015 19:21:20 +0000 (20:21 +0100)]
Reduce header dependencies in server classes
Pierre Ossman [Fri, 11 Dec 2015 18:32:21 +0000 (19:32 +0100)]
Use a queue for congestion pings
This reduces the data sent, and avoids any problems with the
client corrupting it.
Pierre Ossman [Wed, 30 Nov 2016 06:59:30 +0000 (07:59 +0100)]
Handle timers which should be executed right away
Pierre Ossman [Thu, 16 Nov 2017 15:46:30 +0000 (16:46 +0100)]
Remove double cursor workaround in client
We've fixed the issue more properly in the server now, so remove the
workaround we had in the client.
Pierre Ossman [Thu, 16 Nov 2017 15:44:36 +0000 (16:44 +0100)]
Fix bug where server cursor might disappear
We shouldn't unconditionally remove the server side cursor just
because the client supports client side cursors. We need to also
check that the client fulfills the other criteria for taking over
the cursor.
Pierre Ossman [Thu, 16 Nov 2017 15:43:13 +0000 (16:43 +0100)]
Avoid extra framebuffer update messages
In most cases we will send an update at the end of processing client
messages so these extra calls only slow things down. Server initiated
events still need an explicit call though.
Pierre Ossman [Thu, 16 Nov 2017 15:40:44 +0000 (16:40 +0100)]
Fix for initial client side cursor
Improve the tracking of what cursor we've sent to the client to make
sure the initial cursor is sent properly. We previously tried to infer
this information based on if we've rendered a server side cursor or
not. This logic broke down if things triggered before we've sent the
first update to the client.
Brian P. Hinz [Thu, 16 Nov 2017 22:46:15 +0000 (17:46 -0500)]
Fix "int-in-bool-context" compile errors
Brian P. Hinz [Thu, 16 Nov 2017 22:44:49 +0000 (17:44 -0500)]
Fix compile error on windows when not building with GnuTLS
Brian P. Hinz [Wed, 15 Nov 2017 23:50:15 +0000 (18:50 -0500)]
Override default window manager key bindings better
Brian Hinz [Wed, 15 Nov 2017 13:40:57 +0000 (08:40 -0500)]
Merge pull request #500 from bphinz/issue106-rebase
Hook up the "Load X.509 Cert/Key" dialogs in winvnc. Fixes #106
Boyuan Yang [Wed, 15 Nov 2017 02:05:00 +0000 (10:05 +0800)]
Update Chinese (simplified) translation
Brian P. Hinz [Wed, 15 Nov 2017 10:08:16 +0000 (05:08 -0500)]
avoid putting more includes in headers than necessary
Brian P. Hinz [Wed, 15 Nov 2017 01:57:07 +0000 (20:57 -0500)]
Move gnutls functions into SSecurityTLS
Pierre Ossman [Tue, 14 Nov 2017 15:04:32 +0000 (16:04 +0100)]
Handle FLTK arguments at any position
E.g. vncviewer server.example.com:2 -display :2
Pierre Ossman [Tue, 14 Nov 2017 14:51:50 +0000 (15:51 +0100)]
Don't open X11 display too early
We have to wait until we've passed the command line arguments or
we might overlook a -display argument.
Brian P. Hinz [Tue, 14 Nov 2017 00:00:01 +0000 (19:00 -0500)]
Fix build Java errors caused by UTF-8 characters in source comments
See issue #534
Brian P. Hinz [Mon, 13 Nov 2017 23:33:40 +0000 (18:33 -0500)]
Raise minimum supported Java version to 7
Changes to keyboard handling require methods from the KeyEvent
class that were not introduced until Java 7.
Brian P. Hinz [Sun, 12 Nov 2017 20:42:23 +0000 (15:42 -0500)]
Override implicit focus transfer when "F10" key is pressed
Java L&F has pre-defined hook that transfers the focus to the
menu of the RootPane. Since the viewer doesn't have a menu
this just causes a loss of focus and subsequent unexpected
behavior of keyboard and mouse.
Brian P. Hinz [Sun, 12 Nov 2017 20:36:31 +0000 (15:36 -0500)]
Refactoring and implementation changes to keyboard and mouse handling
See issue #505
Brian P. Hinz [Sun, 12 Nov 2017 16:30:49 +0000 (11:30 -0500)]
Add formatted string function to LogWriter.
Need to be careful with escapes though.
Brian P. Hinz [Sun, 12 Nov 2017 16:03:25 +0000 (11:03 -0500)]
Rename CMsgWriter functions to match C++ code
Pierre Ossman [Mon, 13 Nov 2017 15:17:28 +0000 (16:17 +0100)]
Handle Ctrl+Alt+Delete in raw keyboard mode
Ctrl+Alt+Delete requires special handling to trigger on Windows.
Make sure this works in raw keyboard mode as well.
Pierre Ossman [Mon, 13 Nov 2017 08:08:50 +0000 (09:08 +0100)]
Send proper keysym when Break is pressed
Ctrl+Pause sends break which results in a different VKEY on Windows.
Make sure we map that properly to the equivalent keysym.
Pierre Ossman [Mon, 13 Nov 2017 08:07:59 +0000 (09:07 +0100)]
Handle right shift better on Windows
The shift buttons are a bit buggy on Windows unfortunately, but we
can do slightly better than we're doing today.
Pierre Ossman [Mon, 13 Nov 2017 08:06:03 +0000 (09:06 +0100)]
Handle Windows scan code exceptions
Windows mostly follows the AT set 1 scan codes that we want, but
there are a few exceptions.
Pierre Ossman [Wed, 8 Nov 2017 15:00:05 +0000 (16:00 +0100)]
Move XDesktop specific parameters in to same file
Pierre Ossman [Wed, 8 Nov 2017 14:59:42 +0000 (15:59 +0100)]
Fully standardise on send()/recv()
We already assume sockets here since we use select().
Pierre Ossman [Wed, 8 Nov 2017 14:22:44 +0000 (15:22 +0100)]
Merge branch 'x0-xdesktop-initial-cursor' of https://github.com/x11clone/x11clone
Peter Åstrand (astrand) [Wed, 18 Oct 2017 06:54:05 +0000 (08:54 +0200)]
x0vncserver does not support SetDesktopSize; remove -AcceptSetDesktopSize
Add a Configuration::removeParam to support such cases.
Peter Åstrand (astrand) [Tue, 17 Oct 2017 06:21:30 +0000 (08:21 +0200)]
Configuration::listParams wants width/nameWidth; not ConfigurationObject
Peter Åstrand (astrand) [Mon, 16 Oct 2017 13:18:00 +0000 (15:18 +0200)]
Removed IRIX/Solaris overlay support
Legacy systems.
Peter Åstrand (astrand) [Mon, 16 Oct 2017 13:09:58 +0000 (15:09 +0200)]
Remove support for Lynx/OS
Peter Åstrand (astrand) [Mon, 16 Oct 2017 09:11:45 +0000 (11:11 +0200)]
Added my/Cendio copyright where relevant
Peter Åstrand (astrand) [Wed, 11 Oct 2017 13:12:10 +0000 (15:12 +0200)]
Set the correct cursor when starting
XFixes only reports cursor changes. We must manually call
XFixesGetCursorImage() when starting.
Peter Åstrand (astrand) [Tue, 10 Oct 2017 11:56:51 +0000 (13:56 +0200)]
Use send() with MSG_DONTWAIT when possible
Peter Åstrand (astrand) [Tue, 10 Oct 2017 10:56:04 +0000 (12:56 +0200)]
Define cork() as pure virtual in Socket class
This makes it possible to create a derived class from Socket which is
not TCP based, without having VNCSConnectionST.cxx trying to call
setsockopt() on a non-socket.
Peter Åstrand (astrand) [Tue, 10 Oct 2017 10:27:38 +0000 (12:27 +0200)]
Move XDesktop to separate file
Define ledNames in XDesktop.cxx, rename N_LEDS to XDESKTOP_N_LEDS
Peter Åstrand (astrand) [Mon, 9 Oct 2017 12:59:24 +0000 (14:59 +0200)]
Using namespace rfb in header files is a bad idea
Peter Åstrand (astrand) [Mon, 9 Oct 2017 10:32:14 +0000 (12:32 +0200)]
Build with support for MIT-SHM
No need for ifdefs; we can assume MITSHM. Already done in vncviewer.
Pierre Ossman [Mon, 6 Nov 2017 12:16:35 +0000 (13:16 +0100)]
Avoid corner case of applications rendering at frame rate
There is a problematic corner case where an application is updating
at exactly the same rate that we're sending update. In that case we
may miss updates regularly, getting a very uneven final frame rate.
Avoid this by introducing a slight offset when we start updating.
Pierre Ossman [Mon, 6 Nov 2017 12:15:55 +0000 (13:15 +0100)]
Fix broken logic for sending mouse cursor
The logic got inverted resulting in the cursor being sent needlessly
whenever the cursor moved.
Brian P. Hinz [Mon, 30 Oct 2017 01:55:40 +0000 (21:55 -0400)]
Update distro package requirements
Brian P. Hinz [Mon, 30 Oct 2017 00:33:25 +0000 (20:33 -0400)]
Patch the el7 xorg source appropriately
Pierre Ossman [Thu, 12 Oct 2017 15:07:15 +0000 (17:07 +0200)]
Add debug trace when the clipboard changes
Pierre Ossman [Thu, 12 Oct 2017 15:06:18 +0000 (17:06 +0200)]
Don't validate timestamp on clipboard request
The normal Xorg server doesn't check this field, so neither can we
as there are applications relying on this leniancy.
Pierre Ossman [Thu, 12 Oct 2017 13:05:07 +0000 (15:05 +0200)]
Make exception classes have clearer messages
Include the type of exception in the string generated by each
subclass. Also simplify the constructs to what is needed.
Pierre Ossman [Fri, 6 Oct 2017 11:51:01 +0000 (13:51 +0200)]
Add Travis CI configuration
Pierre Ossman [Fri, 6 Oct 2017 12:30:26 +0000 (14:30 +0200)]
Improve test if library is a CMake target
Newer CMake complains when you try to get the property of something
that isn't a target so use the specific if operator instead.
Pierre Ossman [Fri, 6 Oct 2017 12:29:54 +0000 (14:29 +0200)]
Avoid getting LOCATION property
It's not supported in newer CMake, so try to deduce the library
filename from the target name.
Pierre Ossman [Wed, 4 Oct 2017 14:21:57 +0000 (16:21 +0200)]
Push query connect timeout back in to Xvnc
It was moved to the common code in
f8e3b34c6 , but it was unreliable
because the state could sometimes get out of sync. Push it back in
to Xvnc since it isn't necessarily something all servers will have.
Pierre Ossman [Wed, 4 Oct 2017 13:55:48 +0000 (15:55 +0200)]
Don't queue a query if it is directly rejected
Otherwise we'll wedge the desktop object which expects an approval
or rejection to eventually show up.
Pierre Ossman [Mon, 2 Oct 2017 09:06:04 +0000 (11:06 +0200)]
Keep alpha in cursor alpha conversion
Don't touch the existing value or we might mess it up when we avoid
division by zero.
Pierre Ossman [Mon, 2 Oct 2017 09:05:10 +0000 (11:05 +0200)]
Use current server time for XUngrabKeyboard
We might be calling this outside a normal FLTK event, so we cannot
trust fl_event_time to have a sane value.
Pierre Ossman [Fri, 22 Sep 2017 14:49:10 +0000 (16:49 +0200)]
Remove accidental debug output
Pierre Ossman [Fri, 22 Sep 2017 14:48:14 +0000 (16:48 +0200)]
Make sure to start the frame timer after a buffer change
The buffer is considered changed right away, so we might not get any
add_changed() calls to trigger a start of the timer.
Pierre Ossman [Fri, 22 Sep 2017 14:43:50 +0000 (16:43 +0200)]
Get rid of getFbSize()/getDesktopSize() in common
It was only used by WinVNC, so push it there instead.
Pierre Ossman [Thu, 21 Sep 2017 13:43:58 +0000 (15:43 +0200)]
Switch back to low resolution mode on macOS
This is a revert of
6c0181c . Testing showed that we got a big
performance hit by enabling this, and we also saw some graphical
artifacts. More work is needed before this can be enabled by default.
Pierre Ossman [Mon, 18 Sep 2017 14:22:41 +0000 (16:22 +0200)]
Update keyboard test notes for raw keyboard mode
Pierre Ossman [Mon, 18 Sep 2017 14:22:09 +0000 (16:22 +0200)]
Add keyboard test notes for LED state handling