KasmVNC icon indicating copy to clipboard operation
KasmVNC copied to clipboard

Incomplete display with local resize option & Mouse pointer edge swiping not work on touchscreen devices

Open Kissycat opened this issue 2 years ago • 5 comments

Just like the pictures...

S20425-09505083 S20425-09512448(1)

And it is appeared after I upgrade kasmvnc from release "KasmVNC 0.9.2 Beta" to d829572 , it used to work fine. Local resize is useful, because the touchscreen devices can not call the hidden dock out in fullscreen (remote resize mode), even with a mouse. But a smaller display could.

image 无标题

Kissycat avatar Apr 25 '22 05:04 Kissycat

And they are all chrome 100 on an Android 11 phone, Windows 11 laptop with touchscreen, Windows 10 Desktop.

Kissycat avatar Apr 25 '22 05:04 Kissycat

Hello, thanks for reporting the issues. I may have questions later when we come to testing for a new release, if we are unable to reproduce.

mmcclaskey avatar Apr 25 '22 12:04 mmcclaskey

OK, I would like to help, as long as I can.

Kissycat avatar Apr 25 '22 13:04 Kissycat

If you would like to take a look at it, I can give you a quick tip for working with the front end code more easily. The following instructions assume you have KasmVNC installed on the server.

First make a fork of our project and replace our URL below with your fork's git url.

cd /usr/share/kasmvnc
rm -rf www
git clone https://github.com/kasmtech/noVNC.git www
cd www
git checkout bugfix/touchscreen_sizing

Modify the code to run directly without a webpack, as covered in docs/DEVELOP.md

sed -i 's#<script type="module" crossorigin="use-credentials" src="app/ui.js"></script-->#<script type="module" crossorigin="use-credentials" src="app/ui.js"></script>#' vnc.html
sed -i 's#<!--link rel="stylesheet" href="app/styles/base.css">#<link rel="stylesheet" href="app/styles/base.css">#' vnc.html
sed -i 's#import "core-js/stable";#//import "core-js/stable";#' app/ui.js
sed -i 's#import "regenerator-runtime/runtime";#//import "regenerator-runtime/runtime";#' app/ui.js

You can now access KasmVNC that will run directly on the web code rather than the webpack. You will need to go to vnc.html instead of index.html.

Once complete with code changes, run the following before committing to your git repo. This reverts the changes that allowed you to run the web code directly without the webpack.

cd /usr/share/kasmvnc/www
sed -i 's#<script type="module" crossorigin="use-credentials" src="app/ui.js"></script>#<script type="module" crossorigin="use-credentials" src="app/ui.js"></script-->#' vnc.html
sed -i 's#<link rel="stylesheet" href="app/styles/base.css">#<!--link rel="stylesheet" href="app/styles/base.css">#' vnc.html
sed -i 's#//import "core-js/stable";#import "core-js/stable";#' app/ui.js
sed -i 's#//import "regenerator-runtime/runtime";#import "regenerator-runtime/runtime";#' app/ui.js

Now you can commit your changes to your forked repo and then make a pull request back to this project.

mmcclaskey avatar Apr 26 '22 09:04 mmcclaskey

Thanks a lot, I may give a try. : )

Kissycat avatar Apr 28 '22 07:04 Kissycat