Right Click processing


In the majority of cases touching a touch screen or similar device will normally be the equivalent of generating a mouse left click when used in single touch operation. This is more commonly referred to as 'Click and drag mode' of operation. There are other click modes available as described here.

However, in some cases, it is also desirable to be able to generate a right click via touch. With UPDD there are a number of possible methods.

​It was discovered that right click processing was not working in Linux which we investigated and corrected in UPDD release 6.0.569. In tests we subsequently conducted in RHEL 7.2 with Gnome windows manager we could only get the right click to occur on the task bar and not the desktop albeit a real mouse was able to generate a right click. We do not know why 'touch' generated right click events are not being processed but it could be a distribution release bug or Gnome windows manager issue.

Driver Interface

When the core driver 'mouse' interface is posting touch data it, by default, generates a right click when the stylus is held steady for a period of time.

We refer to this mode of operation as 'Interactive Touch' and is a combination of click and drag plus right click processing.

There are a number of settings that relate to this feature as described here.

These settings can be adjusted in the UPDD Console, Touch section.

However, if you are using a different system interface to post touch data into the OS, then that interface must be responsible for generating the right click.

Extended touch interface

When an extended touch interface is being used to post touch data right click processing is handled as described below.

Windows VHID interface

If, under Windows, the UPDD Virtual HID interface is utilised then Windows will generate a right click when a single touch is held steady for a period of time.

For delta mode and slow data rate controllers the driver will inject touch packets to satisfy the data rate expected by Windows.

This setting can be changed and tested via the Windows Control panel, Pen and Touch, thus:


   

Mac OS Gesture interface 

If, under Mac OS, UPDD Commander is handling touches then an appropriate gesture needs to be set for right click processing as required.

This is normally achieved by setting a Press gesture to generate a right click within the Application settings, either at the highest All Application or within the individual application entry as per this One Finger Press gesture definition. There are also some Global settings that relate to the Press function that can be overridden at the gesture definition level.

Press Gesture definition example  Global Press settings 

Linux uinput interface

For uinput, the driver creates a virtual device to pass right click requests.

Visual feedback

When using driver mouse emulation (in all OS) or Press gesture (in Mac OS) or uinput (in Linux) to generate a right click they have separate options to enable visual feedback such that you are given a 'visual countdown' leading up to the right click, which occurs when the circle drawing is complete:

Under Linux the success of the visual feedback is dependent on the distribution in use.  We have seen it work as expected, draw with a black background and also fail to draw.

At a driver level, this visual feedback can be disabled by setting the setting 'interactive_touch.visual' to 0 as described here.

In macOS this is disabled in the Commander global settings for touch gestures.

Summary

The table below indicates what is handling the right click in the various OS.

OS Core driver interface   Extended touch
 Windows  Interactive Touch  Windows function
 MacOS  Interactive Touch  Gestures function
 Linux  Interactive Touch  Interactive touch

Disabling right click processing

In some cases it may be desirable to disable right click processing, especially with applications that need a press and hold to activate a certain function.

This can be achieved as follows:

Windows  
 Driver mouse interface Set the touch interface to tbupddsu/mouse and disable UPDD's right click processing:
upddutils set active_touch_interface tbupddsu (V6) or mouse (V7) - set simple mouse touch
upddutils nodevice set interactive_touch 0 (disable right click function)
 Driver Virtual HID interface As per the dialog for setting Right Click processing shown above, just uncheck the checkbox to disable the right click function 
MacOS  
 Driver Interface Set the touch interface to simpletouch (or simpletouch_cg) and disable UPDD's right click processing:
upddutils set active_touch_interface simpletouch (set simple mouse touch)
upddutils nodevice set interactive_touch 0 (disable right click function)
 Gestures If, under Mac OS, UPDD Commander is handling touches, then the Press gestures should not be defined or should not be set to generate a right click.
Linux  
 X interface Set the touch interface to xtouch and disable UPDD's right click processing:
upddutils set active_touch_interface xtouch (set X interface)
upddutils nodevice set interactive_touch 0 (disable right click function)
 uinput To follow