Commit Graph

266 Commits

Author SHA1 Message Date
mattmcclaskey 419a3a70e9
WIP - multi monitor refactor 2023-09-08 13:12:28 -04:00
Matt McClaskey 68135beedd
sync client and server down keys on mouse down too (#76)
Co-authored-by: mattmcclaskey <matt@kasmweb.com>
2023-08-29 14:03:58 -04:00
Mariusz Marciniak d135f05932
Feature/kasm 4608 linux printing (#74)
* Add support for relaying unix sockets

* KASM-4608 Add document printing using the printer socket relay

---------

Co-authored-by: Lauri Kasanen <cand@gmx.com>
Co-authored-by: mattmcclaskey <matt@kasmweb.com>
2023-08-03 14:06:27 -04:00
mattmcclaskey d1419f9430
KASM-4146 check browser support for webrtc 2023-03-20 15:25:32 -04:00
Matt McClaskey 4a9d5cebb4
KASM-4039 Limit clipboard checks only after a focus change (#59)
* limit clipboard checks only after a focus change

---------

Co-authored-by: mattmcclaskey <matt@kasmweb.com>
2023-03-02 07:53:10 -05:00
Ryan Kuba d177cd0c51
KASM-3972 use an array of known scaling values to produce pixel perfect output (#54)
* KASM-3972 use an array of known scaling values to produce pixel perfect output

* KASM-3972 drop automatic pixel perfect support to only 1.25 and 1.5 ratios common to Windows installations

* KASM-3972 change setting name and commit html changes

---------

Co-authored-by: ryan.kuba <ryan.kuba@kasmweb.com>
2023-02-23 16:01:35 -05:00
Mariusz Marciniak 31b1a93335
KASM-3744 Fix copy/paste for files and folders (#53) 2023-01-10 08:26:53 -05:00
j-travis 8e5c0e977f
Feature/kasm 3314 kasmvnc controls (#45)
* KASM-3314 Support for changing framerate / resolution / scaling via
iframe message
2022-11-17 14:21:27 -05:00
Matt McClaskey 2f01048bc6
KASM-3574 worker cleanup (#49)
* KASM-3574 worker cleanup

Co-authored-by: mattmcclaskey <matt@kasmweb.com>
2022-11-15 12:15:40 -05:00
Ryan Kuba 34305e9956
KASM-3535 code to disable workers on jpeg quality change more qoi threads (#47)
Added more QOI worker threads
2022-11-14 07:09:10 -05:00
Matt McClaskey 437830d497
Feature/kasm 3380 udp frame (#46)
* Handle the frame id in udp packets

* refactor udp message buffer, add frame_id and rect cnt

* refactor udp to work with new display.js

* additional debug metrics, clear frame buffer on transitions tcp/udp

* fix udp with display refactor, KASM-3541 cancelAnimationFrame

Co-authored-by: Lauri Kasanen <cand@gmx.com>
Co-authored-by: mattmcclaskey <matt@kasmweb.com>
2022-11-11 09:31:16 -05:00
Matt McClaskey 3a6a63cde3
KASM-3102 Allow setting the idle timeout (#41)
refactor idle timeout to use date diff
2022-11-11 09:29:52 -05:00
Anthony Merrill a97fa93d84
Bug/kasm 3355 multibyte issue (#42)
Fix clipboard server to client decoding of multi-byte characters
2022-11-04 07:13:19 -04:00
Matt McClaskey 9f240fc7b1
Major refactor of display class, support for QOI (#43)
* Major refactor of display.js queue to assume async rect processing in order to accommodate threaded decode or udp

* QOI lossless decoder on worker threads using WASM

* rfb.js class to provide frame_id and rect counts per frame

Co-authored-by: ryan.kuba <ryan.kuba@kasmweb.com>
Co-authored-by: matt <matt@kasmweb.com>
2022-11-02 07:01:54 -04:00
Matt McClaskey 9a95983382
KASM-3367 Refactor display.js, direct to visible canvas (#40)
* refactor display.js, remove non-visible canvas and concept of damage

* tweaks to UDP transitions

* Update testing readme

Co-authored-by: matt <matt@kasmweb.com>
Co-authored-by: matt mcclaskey <matt@kamsweb.com>
2022-10-14 15:07:57 -04:00
Dmitry Maksyoma 26c97c1dd3
Feature/kasm 2346 extend mouse buttons (#39)
* Extend mouse event button mask to 16 bits

* Mouse button mapping (JS -> Xorg) support

* Refactor: extract XVNC_BUTTONS

* Refactor: XVNC_BUTTONS numbers correspond to X button numbers

* Refactor

Co-authored-by: Lauri Kasanen <cand@gmx.com>
2022-10-14 12:52:19 -04:00
Matt McClaskey acb64b01b3
Fix send clipboard seamless client to server (#34)
Co-authored-by: mmcclaskey <matt@kasmweb.com>
2022-09-16 14:35:53 -04:00
Matt McClaskey 842d7ad938
added udp toggle in UI, added err handling (#33)
Co-authored-by: Matt McClaskey <matt@kasmweb.com>
2022-09-07 05:40:29 -04:00
Matt McClaskey 5a8d8f24b4
Udp Initial MVP (#32)
* Initial UDP code

* refactored UDP reassembly

* WIP Added udp decoder

* WIP cleanup

* Port multiplexing

* UDP upgrade/downgrade

* UDP packets now have a hash

* Correct udp.js this.numColors bug

* auto upgrade to udp

* re-apply webpack

* Code cleanup, optimize clearing udpBuffer

Co-authored-by: Lauri Kasanen <cand@gmx.com>
Co-authored-by: matt <matt@kasmweb.com>
2022-07-29 12:38:55 -04:00
Matt McClaskey 1753425874
Pointer lock api (#29)
Add pointer lock and relative cursor position support. Game mode enables both pointer lock and relative cursor positions.
2022-05-03 10:37:22 -04:00
Matt McClaskey 6c708d8254
Feature/kasm 2445 clipboard ids (#28)
Adds IDs to clipboard operations for use in DLP, logging, and general attribution.
2022-04-05 08:56:54 -04:00
Matt McClaskey 385a1f99b4
Feature/kasm 2335 ime support 2 (#27)
IME support, refactored keyboard input
2022-03-25 15:03:19 -04:00
Matt McClaskey df9c9d0d96
Bugfix/kasm 2242 clipboard sync (#26)
* KASM-2242 clipboard behavior correction

* remove clipboard length check

Co-authored-by: matt <matt@kasmweb.com>
2022-01-31 09:39:19 -05:00
mmcclaskey ad1fc1f06d
KASM-2152 fps added to stats (#25)
Co-authored-by: matt <matt@kasmweb.com>
2022-01-11 15:31:39 -05:00
Mariusz Marciniak c20db143a0 KASM-2108 Update Kasm<->noVNC communication for mobile related features 2021-11-15 13:53:58 +00:00
Mariusz Marciniak a8a3651898 KASM-2001 Add keyboard controls panel 2021-11-08 21:22:39 +00:00
mmcclaskey 2faf2049c2
Bugfix/kasm 2053 video quality (#19)
* KASM-2053 Fixes previous issues where there was no difference between medium and high
* Expands quality settings to adjust more rendering settings
* Adds an extreme quality setting and custom
* Adds the quality setting to the noVNC control panel, was previously only exposed in the backend for integration with Kasm Workspaces
* Switching quality settings no longer requires reconnecting.
2021-11-08 12:57:24 -05:00
mmcclaskey e11e76e2c7
Feature/kasm 2041 mobile scaling (#20)
* KASM-2041 auto scale high res mobile - Browsers typically set a scale ratio for high resolution screens, so everything isn't tiny. This mostly works well, but results in a super low resolution for the remote display. This feature detects low resolutions where the browser is doing scaling and adjusts the scale backwards to reach a more reasonable resolution. This typically only happens on modern phones.
2021-11-08 12:55:37 -05:00
Mariusz Marciniak 66c5812b4e KASM-2034 Unlock mobile audio playing on first mobile touch event 2021-11-03 12:27:01 +00:00
matt a36f941493 fix Edge 18 and under clipboard 2021-10-15 19:34:01 +00:00
matt 37c41c60f6 Fixes for older Chrome browsers 2021-10-14 17:33:03 +00:00
matt 0bd7bf8b3e rebase from master 2021-10-12 18:36:43 +00:00
matt f8fde81dfb WIP: cleanup code 2021-10-12 14:11:26 +00:00
matt f3418af9b7 WIP: fix recieving large binary cliipboard 2021-10-08 15:08:12 +00:00
Mariusz Marciniak d20e5d78fa KASM-1968 Add support for CMD+click on MacOs 2021-10-07 12:05:45 +02:00
Mariusz Marciniak 66cc16a894 KASM-1980 Add support for CMD right + key shortcuts on MacOs 2021-10-07 12:04:33 +02:00
Mariusz Marciniak fff810d45a KASM-1871 Add smooth scrolling by sending scroll delta directly 2021-10-07 11:58:46 +02:00
Mariusz Marciniak 09707e9820 KASM-1882 Improved pinch&zoom responsiveness 2021-10-07 11:58:46 +02:00
Mariusz Marciniak f509f5231a KASM-1890 Add MacOS shortcut translation 2021-10-07 11:58:46 +02:00
matt 8842f372b8 WIP, firefox support 2021-10-01 19:02:51 +00:00
matt c533d18ac7 Merge branch 'master' into chromeclip 2021-10-01 09:03:09 +00:00
matt e7c601efc0 clipboard WIP 2021-10-01 09:03:03 +00:00
matt 34bfdddab5 KASM-1947 binary clipboard WIP 2021-09-23 08:39:37 +00:00
matt 141f91fde5 KASM-1947 WIP 2021-09-21 09:38:34 +00:00
matt 3c477925f3 KASM-1947 send png WIP 2021-09-17 13:47:11 +00:00
matt f165845c2d KASM-1947 binary clipboard WIP 2021-09-16 19:16:49 +00:00
Lauri Kasanen effc0eee02 Initial binary clipboard support 2021-09-16 15:32:26 +03:00
matt a0907e9390 KASM-1834 added new anti-aliasing feature 2021-09-12 17:53:03 +00:00
matt 4c8e8ef1e1 KASM-1834 disable anti-aliasing when screen ratio is 1:1 2021-09-10 17:31:44 +00:00
Mariusz Marciniak ace35fa652 KASM-1882 MacOs pinch and zoom 2021-08-31 10:39:47 +02:00