remote-touchpad icon indicating copy to clipboard operation
remote-touchpad copied to clipboard

Wrapper script to start the app and provide a tray icon to terminate it

Open neverho0d opened this issue 1 year ago • 0 comments

Hi!

It's not the issue, your application is just great and does what it has to do. Thank you a lot!

I just want to share a script I wrote - a wrapper to start the app with fixed connection parameters (port and connection secret) for a quick predefined connection and to create a tray icon to stop the app in a desktop environment. I think it could be useful for someone else. Here is a script:


#!/bin/bash

# Command to run in the background
COMMAND="/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=remote-touchpad-wait-on-error com.github.unrud.RemoteTouchpad -bind :33333 -move-speed 1.4 -secret THESECRET= -scroll-speed -1"

# Start the command in the background and get its PID
nohup $COMMAND >/dev/null 2>&1 &
PID=$!

# Function to display a confirmation dialog and handle action
confirm() {
    RT_PID=`ps ax | grep 'remote-touchpad ' | grep -v grep | awk '{print $1}'`

    yad --image dialog-question \
	--title "Remote Touchpad" \
	--button=No:0 \
	--button=Yes:1 \
	--text "Terminate the Remote Touchpad?" \
	--mouse
    action=$?
    
    if [[ $action -eq 1 ]]; then
        kill $RT_PID
        exit 0
    fi
}

export -f confirm

# Create a tray icon using yad
yad --notification \
	--image="com.github.unrud.RemoteTouchpad" \
	--text="Terminate Remote Touchpad" \
	--command="bash -c 'confirm'" &

YAD_PID=$!

# Wait for the command to finish
wait $PID

# After the command finishes, remove the tray icon
kill $YAD_PID

The script requires yad to be installed, apt install yad or dnf install yad. I used the Remote Touchpad installed from Flatpal under Fedora 39, so if the application is installed by another way, the command should be updated. Also. I use -scroll-speed -1 to make the scrolling direction the same as my laptop's touchpad does, it could be removed if doesn't needed. Enjoy!

neverho0d avatar Feb 08 '24 21:02 neverho0d