]>
source.dussan.org Git - tigervnc.git/log
Peter Åstrand (astrand) [Tue, 27 Mar 2018 07:14:38 +0000 (09:14 +0200)]
Add a tryScreenLayout function
This can be used to test if a layout if possible.
Peter Åstrand (astrand) [Mon, 19 Mar 2018 10:07:32 +0000 (11:07 +0100)]
Add debug log messages
Peter Åstrand (astrand) [Tue, 20 Mar 2018 09:26:40 +0000 (10:26 +0100)]
Avoid disabling outputs which are already disabled
Better to avoid making unnecessary calls, but mainly we want to avoid
logging false errors.
Peter Åstrand (astrand) [Tue, 20 Mar 2018 07:15:41 +0000 (08:15 +0100)]
Select the correct output for new screens
For example, if we have earlier disabled an output because it was too
large for the framebuffer, we should prefer this output when
allocating new outputs.
Move the code that turn off unused outputs to the end.
Also, add support for checking the output connection state.
Peter Åstrand (astrand) [Tue, 20 Mar 2018 07:10:12 +0000 (08:10 +0100)]
Disable outputs which are larger than the target framebuffer size
Apparently this is not necessary when using the internal API, but a
must with libXrandr.
Peter Åstrand (astrand) [Tue, 27 Mar 2018 07:25:02 +0000 (09:25 +0200)]
vncRandRDisableOutput: Disable only the requested output
This only matters when using clones, which we do not accept yet. This
patch is for completeness and to avoid future surprises.
Peter Åstrand (astrand) [Mon, 19 Mar 2018 09:47:40 +0000 (10:47 +0100)]
Make vncRandRGetOutputDimensions tolerant for disabled outputs
Return error if no CRTC.
Peter Åstrand (astrand) [Mon, 2 Apr 2018 20:15:47 +0000 (22:15 +0200)]
Remove "screen" argument from Randr glue functions
Screen is a Xvnc thing and not relevant for x0vncserver etc.
Peter Åstrand (astrand) [Wed, 7 Mar 2018 11:54:44 +0000 (12:54 +0100)]
Removed support for building without RANDR define
RANDR is mandatory since Xorg 1.7, which is the oldest version we
support.
Peter Åstrand (astrand) [Wed, 7 Mar 2018 11:32:30 +0000 (12:32 +0100)]
Corrected RandR wrapper return codes
In RandR land, there's a lot of return code confusion. Our wrappers
are using the same return codes as RRCrtcSet, RRScreenSizeSet: 1/TRUE
for success. Fixes:
* vncRandRCreateOutputs did not follow this convention
* A lot of code returned -1 upon failure
* vncRandRDisableOutput returned 0 for already disabled outputs
Peter Åstrand (astrand) [Wed, 7 Mar 2018 08:29:00 +0000 (09:29 +0100)]
Move computeScreenLayout/setScreenLayout to unixcommon lib
These two code blocks are not specific to Xvnc/vnc.so, but useful for
x0vncserver as well. RandrGlue.h defines the interface on which
unixcommon depends on.
Peter Åstrand (astrand) [Wed, 7 Mar 2018 07:35:03 +0000 (08:35 +0100)]
vncRandRGetOutputName: return a copy of the string
Compatibility with libXrandr, where the name is in dynamically
allocated XRROutputInfo.
Peter Åstrand (astrand) [Wed, 7 Mar 2018 07:21:42 +0000 (08:21 +0100)]
Make vncRandRGetOutputId return the actual id; not a pointer
Less confusing, and compatible with libXrandr.
Peter Åstrand (astrand) [Wed, 7 Mar 2018 07:10:21 +0000 (08:10 +0100)]
Indented computeScreenLayout and setScreenLayout
Should use 2 spaces like the rest of the project.
Pierre Ossman [Fri, 5 Feb 2016 09:28:49 +0000 (10:28 +0100)]
Remove no longer relevant license comment
Pierre Ossman [Fri, 5 Feb 2016 09:43:12 +0000 (10:43 +0100)]
Stop abusing InputHandler class for write class
The handler is for incoming data and we should not be abusing that
class for the writer class. Do proper write prototypes for the
relevant functions.
Pierre Ossman [Wed, 28 Mar 2018 10:33:22 +0000 (12:33 +0200)]
Add missing break for LED state check
The previous code would incorrectly also add support for QEMU
key events if LED state was supported.
Pierre Ossman [Mon, 26 Mar 2018 10:22:47 +0000 (12:22 +0200)]
Replace "frames" with "updates" in stats
The VNC servers aren't great at getting full frames with each update,
so avoid calling it "frames per second" in the statistics as that
can be misleading.
Brian P. Hinz [Wed, 21 Mar 2018 15:17:09 +0000 (11:17 -0400)]
Set focus to password field in UserDialog
Fixes issue #616
Pierre Ossman [Thu, 8 Mar 2018 16:30:54 +0000 (17:30 +0100)]
Merge branch 'altgraph' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Thu, 8 Mar 2018 16:16:14 +0000 (17:16 +0100)]
Update keyboard test doc for shift on Windows
Shift key handling was improved in
30b3f92 , but the test documentation
wasn't updated.
Pierre Ossman [Thu, 8 Mar 2018 16:24:54 +0000 (17:24 +0100)]
Handle Ctrl+AltGr on Windows
Improve AltGr detection even further on Windows so we can detect the
case when Ctrl and AltGr are pressed together.
Pierre Ossman [Thu, 8 Mar 2018 13:05:39 +0000 (14:05 +0100)]
Better detection of AltGr on Windows
Try to properly detect the fake CtrlL+AltR sequence Windows sends
when pressing AltGr. This allows us to send more accurate key
events over to the server.
Andika Triwidada [Wed, 7 Mar 2018 17:54:00 +0000 (00:54 +0700)]
Add Indonesian translation
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