]> source.dussan.org Git - tigervnc.git/log
tigervnc.git
6 years agoMerge branch 'clipfocus' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 20 Apr 2018 11:45:07 +0000 (13:45 +0200)]
Merge branch 'clipfocus' of https://github.com/CendioOssman/tigervnc

6 years agoMake sure we get C99
Pierre Ossman [Fri, 13 Apr 2018 11:49:43 +0000 (13:49 +0200)]
Make sure we get C99

The compiler might default to something older, so make sure we get
the features we need.

6 years agoImprove out-of-tree build of Xvnc/libvnc.so
Pierre Ossman [Fri, 13 Apr 2018 11:39:16 +0000 (13:39 +0200)]
Improve out-of-tree build of Xvnc/libvnc.so

With the new unixcommon library we have things outside of common/,
so make the handling of out-of-tree builds more general.

6 years agoMerge branch 'x0vncserver-randr' of https://github.com/x11clone/x11clone
Pierre Ossman [Tue, 10 Apr 2018 06:11:46 +0000 (08:11 +0200)]
Merge branch 'x0vncserver-randr' of https://github.com/x11clone/x11clone

6 years agoAdd RandR support for x0vncserver 621/head
Peter Åstrand (astrand) [Wed, 7 Mar 2018 12:00:47 +0000 (13:00 +0100)]
Add RandR support for x0vncserver

Change Xserver screen through libXrandr. For complex configurations,
all outputs must have corresponding size modes. As a special case, if
the client requests a single screen with an odd size (for example when
adjusting the size of a non-fullscreen vncviewer), find a smaller
suitable mode, and reduce the framebuffer size as well.

6 years agoAdd a tryScreenLayout function
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.

6 years agoAdd debug log messages
Peter Åstrand (astrand) [Mon, 19 Mar 2018 10:07:32 +0000 (11:07 +0100)]
Add debug log messages

6 years agoAvoid disabling outputs which are already disabled
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.

6 years agoSelect the correct output for new screens
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.

6 years agoDisable outputs which are larger than the target framebuffer size
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.

6 years agovncRandRDisableOutput: Disable only the requested output
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.

6 years agoMake vncRandRGetOutputDimensions tolerant for disabled outputs
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.

6 years agoRemove "screen" argument from Randr glue functions
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.

6 years agoRemoved support for building without RANDR define
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.

6 years agoCorrected RandR wrapper return codes
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

6 years agoMove computeScreenLayout/setScreenLayout to unixcommon lib
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.

6 years agovncRandRGetOutputName: return a copy of the string
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.

6 years agoMake vncRandRGetOutputId return the actual id; not a pointer
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.

6 years agoIndented computeScreenLayout and setScreenLayout
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.

6 years agoRemove no longer relevant license comment
Pierre Ossman [Fri, 5 Feb 2016 09:28:49 +0000 (10:28 +0100)]
Remove no longer relevant license comment

6 years agoStop abusing InputHandler class for write class
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.

6 years agoAdd missing break for LED state check
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.

6 years agoAvoid clipboard updates when not focused 620/head
Pierre Ossman [Mon, 26 Mar 2018 12:17:04 +0000 (14:17 +0200)]
Avoid clipboard updates when not focused

We don't want to surprise the user with unexpected clipboard changes
when vncviewer is in the background, and it is both wasteful and
possibly insecure to inform the server of every clipboard update
when the user isn't interacting with it.

6 years agoAdd focus test helper for Viewport
Pierre Ossman [Mon, 26 Mar 2018 12:16:43 +0000 (14:16 +0200)]
Add focus test helper for Viewport

6 years agoHandle LED state sync entirely in Viewport
Pierre Ossman [Mon, 26 Mar 2018 12:15:40 +0000 (14:15 +0200)]
Handle LED state sync entirely in Viewport

Apply workaround for FLTK's bad focus handling so that we can let
Viewport handle LED synchronisation without help from DesktopWindow.

6 years agoMove server cut text handler to Viewport
Pierre Ossman [Mon, 26 Mar 2018 11:32:49 +0000 (13:32 +0200)]
Move server cut text handler to Viewport

That way both incoming and outgoing clipboard are both in the same
place, making things clearer.

6 years agoReplace "frames" with "updates" in stats
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.

6 years agoSet focus to password field in UserDialog
Brian P. Hinz [Wed, 21 Mar 2018 15:17:09 +0000 (11:17 -0400)]
Set focus to password field in UserDialog

Fixes issue #616

6 years agoMerge branch 'altgraph' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Thu, 8 Mar 2018 16:30:54 +0000 (17:30 +0100)]
Merge branch 'altgraph' of https://github.com/CendioOssman/tigervnc

6 years agoUpdate keyboard test doc for shift on Windows 608/head
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.

6 years agoHandle Ctrl+AltGr on Windows
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.

6 years agoBetter detection of AltGr on Windows
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.

6 years agoAdd Indonesian translation
Andika Triwidada [Wed, 7 Mar 2018 17:54:00 +0000 (00:54 +0700)]
Add Indonesian translation

6 years agoFix indentation in XDesktop.cxx
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.

6 years agoUnset pixel buffer when x0vncserver client disconnects.
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.

6 years agoVNCServerST: Allow unsetting pixel buffer.
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.

6 years agoFix rounding error in pixel down conversion
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.

6 years agoFix calculation of conversion test target values
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.

6 years agoCheck for TrueColor support in x0vncserver
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.

6 years agoMerge branch 'escape-opts' of https://github.com/olivergondza/tigervnc
Pierre Ossman [Tue, 27 Feb 2018 14:31:20 +0000 (15:31 +0100)]
Merge branch 'escape-opts' of https://github.com/olivergondza/tigervnc

6 years agoMerge branch 'congestion' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Mon, 26 Feb 2018 16:08:34 +0000 (17:08 +0100)]
Merge branch 'congestion' of https://github.com/CendioOssman/tigervnc

6 years agoFix incorrect numbers in performance debug graph
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

6 years agoMake sure auth argument is escaped 597/head
Oliver Gondža [Thu, 8 Feb 2018 16:12:11 +0000 (17:12 +0100)]
Make sure auth argument is escaped

6 years agoUpdate visible copyright year to 2018 596/head
Samuel Mannehed [Thu, 8 Feb 2018 15:55:23 +0000 (16:55 +0100)]
Update visible copyright year to 2018

6 years agoFix for RENDER hooks on Xorg < 1.12
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.

6 years agoAdd overlooked parameters to Xvnc and x0vncserver man pages 594/head
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.

6 years agoSync x0vncserver and Xvnc man pages
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.

6 years agoRemove DeferUpdate from man pages
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.

6 years agoMerge branch 'readme-rst' of https://github.com/x11clone/x11clone
Pierre Ossman [Wed, 31 Jan 2018 14:25:57 +0000 (15:25 +0100)]
Merge branch 'readme-rst' of https://github.com/x11clone/x11clone

6 years agoRename README.txt to README.rst and convert to reStructuredText 588/head
Peter Åstrand (astrand) [Wed, 29 Nov 2017 08:11:29 +0000 (09:11 +0100)]
Rename README.txt to README.rst and convert to reStructuredText

6 years agoUpdate Spanish translation
Francisco Javier Serrador [Sat, 27 Jan 2018 00:38:00 +0000 (01:38 +0100)]
Update Spanish translation

6 years agoDon't parse FLTK arguments using Fl::arg; handle -display as other options
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.

6 years agoHook remaining XRender operations
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.

6 years agoUpdate UI look on macOS
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.

6 years agoRestore menukey function to java viewer
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

6 years agoFixes for erros in java hextile/zrle decoders
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.

6 years agoUse XShmGetImage for large reads
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%.

6 years agoUse current server time for XUngrabPointer
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.

6 years agoMy copyright was listed twice, fixed
Peter Åstrand (astrand) [Tue, 9 Jan 2018 08:34:58 +0000 (09:34 +0100)]
My copyright was listed twice, fixed

6 years agoMerge branch 'fatal' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Thu, 7 Dec 2017 14:21:45 +0000 (15:21 +0100)]
Merge branch 'fatal' of https://github.com/CendioOssman/tigervnc

6 years agoAdjust dimensions for rotated monitors 553/head
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.

6 years agoMake VNC extension startup mandatory
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.

6 years agoCall FatalError on fatal exceptions
Pierre Ossman [Thu, 7 Dec 2017 13:55:54 +0000 (14:55 +0100)]
Call FatalError on fatal exceptions

6 years agoDisplay security state when asking for password (java)
Brian P. Hinz [Fri, 1 Dec 2017 02:23:46 +0000 (21:23 -0500)]
Display security state when asking for password (java)

6 years agoMove UserPasswordGetter out of CConn
Brian P. Hinz [Fri, 1 Dec 2017 02:14:25 +0000 (21:14 -0500)]
Move UserPasswordGetter out of CConn

6 years agoFix secure/insecure images
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.

6 years agoUpdate package dependencies for Ubuntu Trusty
Brian P. Hinz [Sun, 26 Nov 2017 17:15:01 +0000 (12:15 -0500)]
Update package dependencies for Ubuntu Trusty

6 years agoStop using CopyRect in WinVNC
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.

7 years agoMerge branch 'pause' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 17 Nov 2017 13:43:34 +0000 (14:43 +0100)]
Merge branch 'pause' of https://github.com/CendioOssman/tigervnc

7 years agoAdd crude congestion window debug trace 442/head
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.

7 years agoAdd simple slow start to congestion control
Pierre Ossman [Mon, 21 Dec 2015 06:59:20 +0000 (07:59 +0100)]
Add simple slow start to congestion control

7 years agoImproved congestion control handling
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.

7 years agoMove congestion control to its own class
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.

7 years agoReduce header dependencies in server classes
Pierre Ossman [Fri, 11 Dec 2015 19:21:20 +0000 (20:21 +0100)]
Reduce header dependencies in server classes

7 years agoUse a queue for congestion pings
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.

7 years agoHandle timers which should be executed right away
Pierre Ossman [Wed, 30 Nov 2016 06:59:30 +0000 (07:59 +0100)]
Handle timers which should be executed right away

7 years agoRemove double cursor workaround in client
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.

7 years agoFix bug where server cursor might disappear
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.

7 years agoAvoid extra framebuffer update messages
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.

7 years agoFix for initial client side cursor
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.

7 years agoFix "int-in-bool-context" compile errors
Brian P. Hinz [Thu, 16 Nov 2017 22:46:15 +0000 (17:46 -0500)]
Fix "int-in-bool-context" compile errors

7 years agoFix compile error on windows when not building with GnuTLS
Brian P. Hinz [Thu, 16 Nov 2017 22:44:49 +0000 (17:44 -0500)]
Fix compile error on windows when not building with GnuTLS

7 years agoOverride default window manager key bindings better
Brian P. Hinz [Wed, 15 Nov 2017 23:50:15 +0000 (18:50 -0500)]
Override default window manager key bindings better

7 years agoMerge pull request #500 from bphinz/issue106-rebase
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

7 years agoUpdate Chinese (simplified) translation
Boyuan Yang [Wed, 15 Nov 2017 02:05:00 +0000 (10:05 +0800)]
Update Chinese (simplified) translation

7 years agoavoid putting more includes in headers than necessary 500/head
Brian P. Hinz [Wed, 15 Nov 2017 10:08:16 +0000 (05:08 -0500)]
avoid putting more includes in headers than necessary

7 years agoMove gnutls functions into SSecurityTLS
Brian P. Hinz [Wed, 15 Nov 2017 01:57:07 +0000 (20:57 -0500)]
Move gnutls functions into SSecurityTLS

7 years agoHandle FLTK arguments at any position
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

7 years agoDon't open X11 display too early
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.

7 years agoFix build Java errors caused by UTF-8 characters in source comments
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

7 years agoRaise minimum supported Java version to 7
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.

7 years agoOverride implicit focus transfer when "F10" key is pressed
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.

7 years agoRefactoring and implementation changes to keyboard and mouse handling
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

7 years agoAdd formatted string function to LogWriter.
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.

7 years agoRename CMsgWriter functions to match C++ code
Brian P. Hinz [Sun, 12 Nov 2017 16:03:25 +0000 (11:03 -0500)]
Rename CMsgWriter functions to match C++ code

7 years agoHandle Ctrl+Alt+Delete in raw keyboard mode 537/head
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.

7 years agoSend proper keysym when Break is pressed
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.

7 years agoHandle right shift better on Windows
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.

7 years agoHandle Windows scan code exceptions
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.

7 years agoMove XDesktop specific parameters in to same file
Pierre Ossman [Wed, 8 Nov 2017 15:00:05 +0000 (16:00 +0100)]
Move XDesktop specific parameters in to same file