#!/bin/bash
#
#	mapTouchInputToDisplayOutput.sh
#       This script will map the Touch screen input ID to the Display Output provided by user
#	2017 Copyright Barco N. V.
#
#

if [ "$#" -eq "0" ]; then
        echo "Please provide TouchScreen Display Output Name received from xrandr"
        echo "======================================"
        echo "USAGE: sh mapTouchInputToDisplayOutput.sh DVI-I-0"
        echo "======================================"
        exit 1
fi

export DISPLAY=:0
INPUT_DEVICES=$(xinput list --id-only)
TOUCH_ID=-1
for device in $INPUT_DEVICES
do
        xinput list $device | grep "slave  pointer"
        if [ $? -eq 0 ]; then
                xinput list $device | grep "Touch mode"
                if [ $? -eq 0 ]; then
                        TOUCH_ID=$device
                        break
                fi
        fi
done

if [ $TOUCH_ID -ne "-1" ]; then
        echo "Found touchscreen device " $TOUCH_ID
        echo "Mapping to Touch screen display output" $1
        xinput map-to-output $device $1
        if [ $? -eq 0 ]; then
                echo "Touch screen mapping successful"
                exit 0
        else
                echo "Touch screen mapping unsuccessful"
                exit 1
        fi
fi

