[Device Reviews and Information] .oOOo.:
I've created a AutoHotkey script to modify what action the gestures on the Cube i9 keyboard cover trigger. This script will disable the "minimize all windows" trigger whenever you swipe in from the top of the touchpad. It will also change the other gestures to something more useful.

To use this script, you need to install AutoHotkey first. AutoHotkey can be downloaded from https://autohotkey.com/ . Do not install the 64-bit version, but choose "Custom Installation -> Unicode 32-bit" during installation. Next download the zip file and extract Touchpad.ahk. Double click the script to start it. When the script runs, a green icon with an H will be added to you notification area. You can stop the script by right clicking on the icon.

I am using the following setup. Feel free to modify the script to your preferences. The script is pretty universal so it might work for other touchpads as well.

Swiping in from the top of the touchpad -> Do nothing

Three finger swipe down -> Do nothing

Pinching in with two fingers -> Do nothing

Pinching out with two fingers -> Do nothing

Two finger swipe left -> History back in browser

Two finger swipe right -> History forward in browser

Three finger tap -> Middle mouse button click

Three finger swipe left -> Previous tab in browser

Three finger swipe right -> Next tab in browser

Three finger swipe up -> Home key

Swipe in from left edge -> Home key

Swipe in from right edge -> End key
​

Known limitations of this script:

Because not all gestures generate unique key combinations, some useful gestures had to be disabled or changed as well. Gestures that share the same key combination and can not be changed independently:

Three finger swipe down / Swipe in from top edge of touchpad

Three finger swipe up / Swipe in from left edge of touchpad

In some keyboard configurations page zoom using a control+scrollwheel on your mouse does not work reliably. Use the right control key to prevent detection by this script.

Every now and then a modifier (alt/control/shift/windows) key can get "stuck" The wrong event will be send or detected. To get the keys "unstuck" again press down each modifier key once. If this doesn't solve the problem restart this script.
​

Changelog:

Version 1.0 / 2016-11-20

Initial release

Version 1.1 / 2016-11-27

Added "dumb mode" where the touchpad gestures key combinations are always converted, even when the input was from a keyboard

Added detection of 64-bit AutoHotkey. Show alert and activate dumb mode

Added code to prevent the Windows key getting stuck

Updated the comments for pinch in and pinch out

Removed the unused MouseRegistered variable
​

For more information, check the README in the script.

; Version 1.1 / 2016-11-27
; Srcipt by .oOOo. : http://xdaforums.com/member.php?u=4422106
; Uses code by shaun : http://www.autohotkey.com/board/topic/36304-hidextended-input-devices-ms-natural-keyboard-4000-etc/

; ###################### README ######################

; This script will change how the touchpad works on a Cube i9 keyboard cover.

; To use this script, download and install AutoHotkey from
; https://autohotkey.com/ Do not install the 64-bit version, but choose
; "Custom Installation -> Unicode 32-bit" during installation.
; After installation double click this script to start it.

; The following touchpad gestures will be disabled

; Minimize all windows when swiping in from the top of the touchpad
; Minimize all windows when using a three finger swipe down

; Zoom out when pinching in with two fingers
; Zoom in when pinching out with two fingers

; The following touchpad gestures will be changed

; Two finger swipe left -> History back in browser
; Two finger swipe right -> History forward in browser

; Three finger tap -> Middle mouse button click
; Three finger swipe left -> Previous tab in browser
; Three finger swipe right -> Next tab in browser

; Three finger swipe up -> Home key
; Swipe in from left edge -> Home key
; Swipe in from right edge -> End key

; How it works

; If you use a gesture on the touchpad, the keyboard cover will send both
; mouse events and a key combination to trigger the action associated with
; that gesture.

; If such a key combination is detected by this script, the script will
; check if there were any mouse events in the 150ms prior to the key
; combination. If this is the case the key combination will be ignored or
; changed to another key combination which will trigger the desired action.

; Known limitations

; Because not all gestures generate unique key combinations, some useful
; gestures had to be disabled or changed as well. Gestures that share the
; same key combination and can not be changed independently:
; Three finger swipe down / Swipe in from top edge of touchpad
; Three finger swipe up / Swipe in from left edge of touchpad

; In some keyboard configurations page zoom using a control+scrollwheel on
; your mouse does not work reliably. Use the right control key to prevent
; detection by this script.

; Every now and then a modifier (alt/control/shift/windows) key can get
; "stuck" The wrong event will be send or detected. To get the keys
; "unstuck" again press down each modifier key once.
; If this doesn't solve the problem restart this script.

; Actual AutoHotkey code starts here

Goto Setup ; Start listening for RAW mouse events

; ###################### CHANGELOG ######################

; Version 1.0 / 2016-11-20
; Initial release

; Version 1.1 / 2016-11-27
; Added "dumb mode" where the touchpad gestures key combinations are
; always converted, even when the input was from a keyboard
; Added detection of 64-bit AutoHotkey. Show alert and activate dumb mode
; Added code to prevent the Windows key getting stuck
; Updated the comments for pinch in and pinch out
; Removed the unused MouseRegistered variable

; ###################### START OF HOTKEYS ######################

#If ActivateHotkeys()

#d::
; Swipe in from top edge / Three finger swipe down
; Show Desktop -> Do nothing
return

LControl & WheelUp::
; Pinch out with two fingers
; Zoom in -> Do nothing
return

LControl & WheelDown::
; Pinch in with two fingers
; Zoom out -> Do nothing
return

WheelLeft::
; Swipe left with two fingers
; Scroll left -> History forward in browser
Send !{Right}
; Prevent it from firing too often
Sleep 500
return

WheelRight::
; Swipe right with two fingers
; Scroll right -> History back in browser
Send !{Left}
; Prevent it from firing too often
Sleep 500
return

#a::
; Swipe in from right edge
; Open Action Centre -> End key
Send {End}
; Make sure the Windows key doesn't get stuck in the down position
Send {Blind}{LWin up}
return

#Tab::
; Swipe in from left edge / Three finger swipe up
; Activate Task View -> Home key
Send {Home}
; Make sure the Windows key doesn't get stuck in the down position
Send {Blind}{LWin up}
return

#s::
; Three finger tap
; Open Cortana -> Middle mouse click
Send {MButton}
; Make sure the Windows key doesn't get stuck in the down position
Send {Blind}{LWin up}
; MsgBox ,,,Cortana, 1
return

!Tab::
; Three finger swipe right
; App switching -> Next tab in browser
Send +^{Tab}
return

+!Tab::
; Three finger swipe left
; App switching -> Previous tab in browser
Send ^{Tab}
return

!Right::
!Left::
; These are send as part of the three finger swipe left and right
; Ignore them
return

#If ; This is an endif in AutoHotkey

ActivateHotkeys()
{
global TouchPadLastEventTime
global ModifierDown

; Do not activate hotkeys of one of the modifier keys is physically down
; This allows using Control+WheelUp or WheelDown to zoom

ModifierDown := GetKeyState("LControl", "P")
+ GetKeyState("RControl", "P")

if (ModifierDown != 0)
{
; MsgBox ,,,%ModifierDown%, 1
return false
}

if (TouchPadLastEventTime = -1)
{
; Run in dumb mode
; Most likely because the 64-bits version of AutoHotkey is installed

return true
}

; Check if we received mouse events in the last 150ms
DeltaTime := A_TickCount - TouchPadLastEventTime

if (DeltaTime <= 150)
{
return true
}
else
{
return false
}
}

; ###################### SET UP AUTOHOTKEY ######################

Setup:

; Replace any previous instance
#SingleInstance force

#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
#InstallKeybdHook

; ###################### START OF RAW INPUT HANDLING ######################

; Based on the code by shaun http://www.autohotkey.com/board/topic/36304-hidextended-input-devices-ms-natural-keyboard-4000-etc/

DetectHiddenWindows, on
OnMessage(0x00FF, "InputMessage")

SizeofRawInputDeviceList := 8
SizeofRawInputDevice := 12

RIM_TYPEMOUSE := 0
RIDEV_INPUTSINK := 0x00000100
RID_INPUT := 0x10000003

TouchPadLastEventTime := 0
ModifierDown := 0

Gui, Show, , TouchpadRawEventsCapture
Gui, Cancel

HWND := WinExist("TouchpadRawEventsCapture")

Res := DllCall("GetRawInputDeviceList", UInt, 0, "UInt *", Count, UInt, SizeofRawInputDeviceList)

if (Count = 0)
{
MsgBox ,,No devices found !, Please install the 32-bit version of AutoHotkey.`n`nContinuing in dumb mode., 5
TouchPadLastEventTime := -1
}

VarSetCapacity(RawDevice, SizeofRawInputDevice)

NumPut(RIDEV_INPUTSINK, RawDevice, 4)
NumPut(HWND, RawDevice, 8)
NumPut(1, RawDevice, 0, "UShort")
NumPut(2, RawDevice, 2, "UShort")

Res := DllCall("RegisterRawInputDevices", "UInt", &RawDevice, UInt, 1, UInt, SizeofRawInputDevice)

InputMessage(wParam, lParam, msg, hwnd)
{
global RID_INPUT
global RIM_TYPEMOUSE
global TouchPadLastEventTime

Res := DllCall("GetRawInputData", UInt, lParam, UInt, RID_INPUT, UInt, 0, "UInt *", Size, UInt, 16)
VarSetCapacity(Buffer, Size)
Res := DllCall("GetRawInputData", UInt, lParam, UInt, RID_INPUT, UInt, &Buffer, "UInt *", Size, UInt, 16)

Type := NumGet(Buffer, 0 * 4)

if (Type = RIM_TYPEMOUSE)
{
; MsgBox ,,,%Type%, 1
TouchPadLastEventTime := A_TickCount
}

return
}