Commit Graph

78 Commits (20876547a18c3933f4e765f9e9437e862dc59b16)

Author SHA1 Message Date
Lauri Kasanen 1bd674d7b3 Also clear local clipboards 2 years ago
Lauri Kasanen 66f3013998 Add clear_clipboard API 2 years ago
Lauri Kasanen 6793a20eca Accidentally accessed wrong var 2 years ago
Anthony Merrill ba8e98a9f6 Resolve KASM-2948 "Feature/ qoi support" 3 years ago
Matthew McClaskey 91f619db5c Fixes dynamic quality changes by client not applying 3 years ago
Matthew McClaskey 3b1a72738e Merge branch 'feature/KASM-3371_keystroke_logging' into 'master'
Move keypress logging behind the DLP_Log verbose option

Closes KASM-3371

See merge request kasm-technologies/internal/KasmVNC!71
3 years ago
Matthew McClaskey 99c1e10789 Resolve KASM-2346 "Feature/ extend mouse buttons" 3 years ago
Lauri Kasanen 17cd5e597a Move keypress logging behind the DLP_Log verbose option 3 years ago
Lauri Kasanen 582740b3d8 Implement server-side downgrade from udp 3 years ago
Anthony Merrill d9cf46f83e Merge branch 'feature/KASM-2797_force_full_frame' into 'master'
Add /api/send_full_frame

Closes KASM-2797

See merge request kasm-technologies/internal/KasmVNC!50
3 years ago
Anthony Merrill 5e2a8b45da Merge branch 'feature/KASM-2837_STUN_srv_setting' into 'master'
Add -stunServer arg for on-premises STUN

Closes KASM-2837

See merge request kasm-technologies/internal/KasmVNC!57
3 years ago
Lauri Kasanen f8013340ab Add -udpPort 3 years ago
Lauri Kasanen 6451cc3220 Add -stunServer arg for on-premises STUN 3 years ago
Lauri Kasanen 3b40a92548 Udp 3 years ago
Lauri Kasanen 8b71ea3cd9 Add /api/send_full_frame 3 years ago
Lauri Kasanen bf2bf679b6 New logging setup 3 years ago
Matthew McClaskey 774a61ace7 Toggle game mode 3 years ago
Matthew McClaskey b2e878e79e Log and send clipboard op ids 3 years ago
Matthew McClaskey 3f89e5c117 Resolve KASM-2335 "Feature/ ime support" 3 years ago
Justin Travis 42d7ff015d Resolve KASM-2238 "Feature/ freeze session" 3 years ago
Matthew McClaskey 03729ca66e Update user 3 years ago
mmcclaskey 5b28a168d0
Chromeclip (#69)
* Initial binary clipboard support

* Rename -DLP_Clip_Types to -DLP_ClipTypes

* Better handling of websocket frames

* Copy-paste bug in SSE2 scaling to under 0.5x

* Remove old text clipboard

* Bind text to binary clipboard

* Move binclip clear to probing phase

* Off-by-one in sse2 scaling

* Add a clarifying log message for INCR clipboard transfers

* WIP: Update novnc commit

* Fix CentOS pipeline

* webpack fix

* Update novnc commit

* Change some DLP defaults

* update novnc commit

Co-authored-by: Lauri Kasanen <cand@gmx.com>
Co-authored-by: matt <matt@kasmweb.com>
4 years ago
Mariusz Marciniak 0a45fcc700 KASM-1871 Add smooth scrolling
Previously all scrolling relied on "clicking" the up/down or left/right scroll buttons
which made it unprecise and to always scroll at the same speed.

Now we pass the scroll delta directly to the xorg input driver so the scroll is more responsinve and adaptive.
4 years ago
mmcclaskey 93e47e5d54
Bugfix/kasm 1912 websocket crash (#57)
* Copy-paste bug in SSE2 scaling to under 0.5x

* Better handling of websocket frames

* KASM-1912 websocket crash, scaling bug

Co-authored-by: Lauri Kasanen <cand@gmx.com>
Co-authored-by: matt <matt@kasmweb.com>
4 years ago
mmcclaskey 3f680a7b80
KASM-1913 webp mode tweaks (#55)
Co-authored-by: matt <matt@kasmweb.com>
4 years ago
mmcclaskey 0cb2c0ba9f
Sse scaling (#52)
* Add CPUID functions for runtime dispatch
* Add SSE2 scaling
4 years ago
mmcclaskey dc21d5f97c
Add a set of self-microbenchmarks (#51)
Co-authored-by: Lauri Kasanen <cand@gmx.com>
4 years ago
Lauri Kasanen 4b28667e90 Fix possible missing clipboard deinit 4 years ago
Lauri Kasanen f57e6e644b Add some more frame stats granularity, skip frame stats on no-data calls 4 years ago
Lauri Kasanen c1ed769780 Clear disconnected clients from the bottleneck stats api 4 years ago
Lauri Kasanen 438271d68b Add support for vmware cursor 4 years ago
Lauri Kasanen fb9dd56703 Initial /api/get_frame_stats 4 years ago
Lauri Kasanen 32e8d40472 Implement /api/get_bottleneck_stats 4 years ago
Lauri Kasanen 29e0e2bd2e Fix animated cursor resize crash 4 years ago
Lauri Kasanen 7a695c976e Writer perms were checked in multiple places, consolidate and fix a missing case 4 years ago
Lauri Kasanen 95d34f7e58 Fix some local->remote clipboard merge misses 4 years ago
Lauri Kasanen a1cf454f06 Sync utf8 clipboard support 4 years ago
lhchavez 25b8e64adb Add support for notifying clients about pointer movements
This change adds support for the VMware Mouse Position
pseudo-encoding[1], which is used to notify VNC clients when X11 clients
call `XWarpPointer()`[2]. This function is called by SDL (and other
similar libraries)  when they detect that the server does not support
native relative motion, like some RFB clients.

With this, RFB clients can choose to adjust the local cursor position
under certain circumstances to match what the server has set. For
instance, if pointer lock has been enabled on the client's machine and
the cursor is not being drawn locally, the local position of the cursor
is irrelevant, so the RFB client can use what the server sends as the
canonical absolute position of the cursor. This ultimately enables the
possibility of games (especially FPS games) to behave how users expect
(if the clients implement the corresponding change).

Part of: #619

1: https://github.com/rfbproto/rfbproto/blob/master/rfbproto.rst#vmware-cursor-position-pseudo-encoding
2: https://tronche.com/gui/x/xlib/input/XWarpPointer.html
3: https://hg.libsdl.org/SDL/file/28e3b60e2131/src/events/SDL_mouse.c#l804
4 years ago
Pierre Ossman 189f503b98 Fix handling of bad update requests
We computed a safe area if a client gave us a bogus one, but we didn't
actually use it. Fix this properly and make sure we don't pass on bad
coordinates further.
4 years ago
Pierre Ossman 25995e2490 Remove unused bufSize argument from streams 4 years ago
Pierre Ossman 281d65292a Remove special functions from JPEG compressor
We can do what we want with the standard methods.
4 years ago
Pierre Ossman 57a3c3bba8 Simplify stream availability handling
Just have a simply number of bytes argument to avoid a lot of
complexity.
4 years ago
Pierre Ossman 7f90205cf2 Add stream avail() methods
Makes it more readable to write code that needs to know how much
data/space is available in a stream.
4 years ago
Pierre Ossman c5b7137f2b Flush data on close
There might be some final handshake data that is still stuck in the
buffers, so make a best effort attempt at getting it to the client.
4 years ago
Pierre Ossman a3c0ce55c9 Support calling methods from timers
We can't safely use the normal timers in base classes as we cannot
guarantee that subclasses will call the base class' handleTimeout()
properly if the subclass overrides it.
4 years ago
Lauri Kasanen 1632f4888d Enable basicauth by default, remove the option to supply it on the command line 4 years ago
matt 93d3bf052d Removed old line 4 years ago
matt 7b3f6876b4 Fixed syntax error 4 years ago
matt 46e03289be Manually merged region changes 4 years ago
Lauri Kasanen c3e30dcea1 Add support for DLP_Region 4 years ago