Control mouse and keyboard from the webbrowser of a smartphone (or any other device with a touchscreen). To take control open the displayed URL or scan the QR code.
Supports Flatpak's RemoteDesktop portal (for Wayland), Windows and X11.
Control mouse and keyboard from a smartphone
License: GNU General Public License v3.0
Control mouse and keyboard from the webbrowser of a smartphone (or any other device with a touchscreen). To take control open the displayed URL or scan the QR code.
Supports Flatpak's RemoteDesktop portal (for Wayland), Windows and X11.
Hi, the program is not working when I'm connecting from Fedora 30 (GNOME on Xorg) to my iPhone 7 and the page just shows disconnected. Not a problem to me but I thought you might want to know ;)
Typing and than sending the whole string makes it super hard to edit text typed on the remote computer.
Especially deleting and correcting single characters is almost impossible.
An option would be nice to immediately send every keystroke.
Hi, I am very new to Go. I am developing an Android application which will run with "remote-touchpad". So I need to run "remote-touchpad". I am using GoLand by JetBrains to run code But I have getting following errors:
# command-line-arguments .\main.go:52:29: undefined: Backend .\main.go:79:26: undefined: KeyLimit .\main.go:82:30: undefined: Key .\main.go:95:26: undefined: PointerButtonLimit .\main.go:102:32: undefined: PointerButton .\main.go:143:2: undefined: TerminalSetTitle .\main.go:166:14: undefined: Backend .\main.go:169:30: undefined: Backends .\main.go:175:27: undefined: UnsupportedPlatformError .\main.go:204:10: undefined: FindDefaultHost .\main.go:204:10: too many errors note: module requires Go 1.15
OS: Windows 10
Please Help.
I tested only the flatpak version but there seems to be a lag when moving on the touchpad. It is much greater when using touchpad after a waiting a while.However, If I slide my finger without picking up from the screen there seems to be very little lag.
Hi,
remote-touchpad as such works great on my system (as flatpak on Debian testing).
However there is one annoyance:
When my system is connected to a vpn (via openvpn) and I start remote-touchpad, the webserver uses the ip of the tun-device that openvpn creates, rather than the address in the local network - and then my mobile cannot connect.
So in this particular case it seems FindDefaultHost determines the wrong ip-address.
Starting remote-touchpad before connecting to a vpn works.
Hello, is there any command argument to start the program ready to use?
I would like to start Ubuntu, run a command on startup, and a show a console ready with the QR code.
Sadly, first I have to select 1 of the options (mouse, keyboard, touch screen) before show the QR code.
Hi there,
Is it possible to allow users to custom the layout of keyboard, e.g. a 1x2 grid or 3x3 grid?
When I browse my ppt, I only need two buttons for page forward and page backward, thus other buttons are useless. if they are present on the keyboard, it's easy to get them clicked by accident. However, when I read a pdf document, I need four buttons to turn the page forward, turn the page backward, slide down one line and slide up one line.
As there are various usage scenarios, supporting these scenarios separately requires a lot of work. But if the users are allowed to custom the keyboard layout and decide the function of each key, they can make targeted customization themselves for their special requirements and the developers have no need to modify the code.
Sadly, I want to help, but I am neither familiar with go language nor web development.
Message on unbuntu:
ERROR: ld.so: object 'libgtk3-nocsd.so.0' from LD_PRELOAD cannot be preloaded (failed to map segment from shared object): ignored.
2020/09/02 13:04:41 ready: http://192.168.1.4:35289/#H9+ee2+Wcv0=
I think that the problem is there but i'm not linux expert....
Please add option for having some form of velocity (that wanes over time based on the acceleration)
And also supporting older android phone browsers (like those that have android 2.3) as these phones are useless nowadays, lets get them back to life.
1-Main window (touchpad)
2-click Full screen (lower left icon)
3-click new volume/media control icon (top)
4-new page opens in full screen mode with all vol/media icons
5- return to main touchpad page (using browser's back button)
6- main window shows up but in webpage mode (no longer fullscreen)
peace
When X is launched with "startx" or "xinit" I have the following error message:
"X11 backend: unsupported session type 'tty'
RemoteDesktop portal backend: keyboard or pointer source type not supported
Windows backend: disabled"
So I had to install a login manager (lightdm) to launch the app, and everything work perfectly.
I wonder if there is a way to launch it without a login manager ?
Cannot find a way to send Backspace key.
Anyway is really cool app! VERY, VERY Thanks!
I long time ago trying to find something like this - simple and working!
Thanks! May the Force be with you! :)
On LG phone running android 5 lollipop with chrome canary / chromium browser.
The emoji used on the html page in the bottom right corner to use the keyboard ⌨ is not visible on my phone... It shows up as a rectangle with a X inside 〿 ... Turns out that not all devices can display that specific keyboard emoji.
In order to make this great app compatible with as most devices as possible, may I suggest some more ''universal'' alternatives instead?
For Keyboard. ⌨ (Current one)
Alternatives: 🔠 - 🔡 - 🔤 - 𝍑 - 𝍔
For Fullscreen ▢ (Current one)
Alternatives: ◱ - ⿹ - ⤢
Hi,
Thanks for this awesome project.
I did go get github.com/Unrud/remote-touchpad
and go install github.com/Unrud/remote-touchpad
.
Now when I run the application, I get error saying
❯ remote-touchpad
2020/05/23 20:56:42 unsupported platform:
X11 backend: disabled
RemoteDesktop portal backend: disabled
Windows backend: disabled
⛵ kube-f8s (monitoring) in ~/Downloads/actionforimpact
❯ remote-touchpad --help
Usage of remote-touchpad:
-bind string
bind server to [HOSTNAME]:PORT (default ":0")
-cert string
file containing TLS certificate
-key string
file containing TLS private key
-secret string
shared secret for client authentication
-version
show program's version number and exit
Finally I found such a nice project that is simple enough and clear enough! The one sadness is that it seems not support multi-finger operation? Will it support that in the feature? Wating for that feature.
Hi I get no response on my browser when I paste the URL tried many times I'm on the same network
It would be amazing to be able to use the mouse in the leftover space above the shortcut buttons (volume up down ...)
➜ ~ snap list
Name Version Rev Tracking Publisher Notes
core18 20200427 1754 latest/stable canonical✓ base
remote-touchpad 0.0.18 122 latest/stable unrud -
snapd 2.45.1 8140 latest/stable canonical✓ snapd
➜ ~ remote-touchpad
2020/06/18 19:21:15 unsupported platform:
X11 backend: unsupported session type 'tty'
RemoteDesktop portal backend: The name org.freedesktop.portal.Desktop
was not provided by any .service files
Windows backend: disabled
OS: Arch Linux x86_64
Kernel: 5.7.3-arch1-1
Uptime: 6 mins
Shell: zsh 5.8
Terminal: kitty
CPU: Intel i7-4790K (8) @ 4.600GHz
Memory: 1569MiB / 31988MiB
Disk (/): 72G / 188G (41%)
Hello
Is it possible for the URL not to change each time I run the .exe?
Is there any chance to have wayland support at some point? How complicated would it be?
Two finger scrolling only works immediately after setting up the server and client and opening Firefox. As soon as I switch tabs, two-finger scrolling doesn't work anymore.
I'm very grateful for this app because it is orders of magnitude more responsive and better feeling that KDE Connect's "Remote Input". Scrolling works well, and there is almost no lag.
The one issue is the bloat that arises due to this being packaged as a Flatpak or Snap only. On Linux Mint 21.1 XFCE, when I install the flatpak it requires 2.7 GB space which is absurd! Further, being packaged like this means it will use more RAM than it otherwise would have which is a big deal for older systems with less memory.
The project seems to be written in Go and have no GUI, which should make it trivial to package as a .deb and perhaps an .rpm. I'm sure you understand that 2.7 GB is most unreasonable!
Yo,
This is one of my favorite program. I've been using and following for years. Used it on Win 10 and countless versions of Ubuntu, with Android machines dating back to version 4 up to 7, on phones and tablets. I installed all of the different installer editions. The ALL work flawlessly.
I wonder if one day... one day we'll see an APK version able to be run on Android machines... Just imagine using This application to scan a qr code and control a Android OS via a browser webpage on another Android machine!
Now THAT would be s3xy as freek ! 🐙
Hehehehe! But I guess it's not posssible... Or what about if a linux distro is installed inside a "Busybox" and "Terminal" on Android? Would it work then?
Peace!
When using the app keyboard and sending some text, some text gets lost! Any clues?
Hi guys,
I have this error when I trying to use RemoteTouch in wayland session
2021/10/08 21:10:37 unsupported platform:
X11 backend: unsupported session type 'wayland'
RemoteDesktop portal backend: keyboard or pointer source type not supported
Windows backend: disabled
I am using Nitrux OS 1.6.1 with wayland.
Some ideas?
Title: Issue with CMakeLists.txt file in remote-touchpad repository
Description:
I am attempting to build the remote-touchpad software on my Manjaro Linux system, but I am encountering an error related to the CMakeLists.txt file. When I run the cmake command in the remote-touchpad directory, I receive the following error message:
" CMake Error: The source directory "/home/myuser/Desktop/remote-touchpad" does not appear to contain CMakeLists.txt."
However, when I navigate to the remote-touchpad directory, I cannot find the CMakeLists.txt file.
Steps to reproduce:
Expected result:
The cmake command should be able to find the CMakeLists.txt file in the remote-touchpad directory and build the software successfully.
Actual result:
The CMakeLists.txt file is missing from the remote-touchpad directory, causing the cmake command to fail.
Additional information:
Please let me know if there is any additional information I can provide to help resolve this issue. Thank you.
hey great stuff with volume and media control BUT..
All volume and media control buttons are working but when in full screen mode via the lower left corner fullscreen button the volume and media buttons are clickable but they dont trigger anything actions on the host. device.
Hi,
Are there any plans to add sensitivity controls?
Thanks!
I think these are helpful features. Currently, I need to swipe few times on my phone to move the cursor to the place I want. It would be great if we could have mouse acceleration feature.
Furthermore, if we could add some useful touch gestures for browsing (backward, forward), open overview in Linux gnome, etc, that would be awesome.
Thanks for the great work!
On 16.0.3, with Arch Linux and X11.
Actually the scrolling is natural scrolling.
I want it to be reverse. meaning that when I move two fingers up the scrollbar should go up also.
Please add a command line argument supporting this. Thanks.
This is a very useful utility, thank you. The layout with the media keys and so on is also really helpful.
Another useful thing could be to allow people to provide their own custom html file with their own layouts by a commandline switch or config file. (I guess this would require modification in the inputcontrol directory to ensure that all the possible keys were able to be used etc.)
For example, one could then make a custom layout to allow the phone to be used as a numeric keypad for a small laptop that doesn't have one, or make other custom layouts for use with particular apps.
Thanks again.
I would like to have the QR code be static and not change every time on start up. THis program is amazing!!! :)
I changed to Keyboard Screen, changed chinese input Method but unable sucess Input to Textbox
Pens are nice because they support hover and buttons.
E.g., the Samsung S-Pen has a button that can neatly function as eraser.
Hi, is there a manual or command line to specify the output files for the URL and the QR code?
I dont know how to read the code in go and would like to know how I can get the QRCode image and the URL generated by the executable?
I was hoping to use this to draw or write on my PC with a little more ease than a mouse, but it's not possible without mouse buttons.
Perfect if it supports scrollbars,two finger gesture is still more convenient without scroll bar.
Can this be updated , so that we can skip movie or song buy 10 seconds or a custom input in seconds to skip
HI @Unrud
Many thanks for great tool!
I faced with next behavior, when you try to volume up/down with many touches quite fast, browser view make zoom in and buttons just move from their position, so you're making miss touch.
I found solution:
https://stackoverflow.com/questions/46167604/ios-html-disable-double-tap-to-zoom
https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action
Interesting note this happened only on buttons. For other screen and touchpad it is not zoomed.
I'm not frontend/CSS developer, so maybe there is some better solution for this.
I can prepare PR and make tests. What do you think about this?
Hello,
1.4.1 isn't working on Windows 11, earlier versions are fine.
Steps to reproduce :
Servers shows : "2023/05/20 17:17:10 Windows controller: Access is denied."
1.4.0 -1.2.1 are fine. Seems the last version only is affected.
Thanks for having a look.
Is there any way to get the arrow keys to work with LibreOffice Impress (Prev/Next Slide)?
The mouse works fine but not the buttons. It seems it sends XF86Forward/Back events but libreoffice does not recognize them. I tried (without luck) to remap these events to Left/Right arrow keys:
xmodmap -e 'keysym XF86Back = Left' -e 'keysym XF86Forward = Right'
Hi,
It would be nice to support older browsers.
The javascript code here is simple enough. I think all what's needed is to replace const
and let
with var
in fn.js.
That did the job for me but I thought it would be good to mention here.
I am using Linux Mint 20 (Ubuntu 20.04)
When trying to type text in greek characters they are typed once every 500 ms or so, when latin characters are to be typed, they are typed instantly.
Tried both being in VPN connection and not.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.