Skip to content

Instantly share code, notes, and snippets.

@therealdreg
Last active August 23, 2024 20:20
Show Gist options
  • Save therealdreg/368beed57bcf93aa30de28ddd67d3e62 to your computer and use it in GitHub Desktop.
Save therealdreg/368beed57bcf93aa30de28ddd67d3e62 to your computer and use it in GitHub Desktop.
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Synaptics\SynTP\TouchPadPS2TM1800]
"2FingerTapAction"=dword:00000002
[HKEY_LOCAL_MACHINE\SOFTWARE\Synaptics\SynTP\Win10]
"2FingerTapAction"=dword:00000002
;[HKEY_CURRENT_USER\Software\Synaptics\SynTPEnh\ZoneConfig\TouchPadPS2TM1800\2FHorizontalScrolling]
;"UserZoneFlags"=dword:00000005
;[HKEY_CURRENT_USER\Software\Synaptics\SynTPEnh\ZoneConfig\TouchPadPS2TM1800\2FVerticalScrolling]
;"UserZoneFlags"=dword:00000005
@FindMuck
Copy link

Automatic PowerShell script for same purpose.
Loops through all HKEY_CURRENT_USER\Software\Synaptics\SynTP\TouchPadPS2* paths, so it is kinda better approach if you don't have TouchPadPS2TM1800 specifically as your TouchPad, thus script solves problem of unnecessary additional actions.


How to use:

1. Paste code from below to text file with file extension .ps1

Get-ChildItem -Path "HKCU:\Software\Synaptics\SynTP\" | Where-Object {$_.Name -match "TouchPadPS2*"} | ForEach-Object {
  if (-not (Get-ItemProperty -Path $_.PSPath -Name "2FingerTapAction" -ErrorAction SilentlyContinue)) {
    New-ItemProperty -Path $_.PSPath -Name "2FingerTapAction" -Value 2 -Type DWORD
  } else {
    Set-ItemProperty -Path $_.PSPath -Name "2FingerTapAction" -Value 2 -Type DWORD
  }
}
 
if (-not (Get-ItemProperty -Path "HKLM:\SOFTWARE\Synaptics\SynTP\Win10" -Name "2FingerTapAction" -ErrorAction SilentlyContinue)) {
  New-ItemProperty -Path "HKLM:\SOFTWARE\Synaptics\SynTP\Win10" -Name "2FingerTapAction" -Value 2 -Type DWORD
} else {
  Set-ItemProperty -Path "HKLM:\SOFTWARE\Synaptics\SynTP\Win10" -Name "2FingerTapAction" -Value 2 -Type DWORD
}
 
<#
Get-ChildItem -Path "HKCU:\Software\Synaptics\SynTPEnh\ZoneConfig\" | Where-Object {$_.Name -match "TouchPadPS2*"} | ForEach-Object {
  $horizontalPath = Join-Path $_.PSPath "2FHorizontalScrolling"
  if (-not (Get-ItemProperty -Path $horizontalPath -Name "UserZoneFlags" -ErrorAction SilentlyContinue)) {
    New-ItemProperty -Path $horizontalPath -Name "UserZoneFlags" -Value 5 -Type DWORD
  } else {
    Set-ItemProperty -Path $horizontalPath -Name "UserZoneFlags" -Value 5 -Type DWORD
  }
}
#>
<#
Get-ChildItem -Path "HKCU:\Software\Synaptics\SynTPEnh\ZoneConfig\" | Where-Object {$_.Name -match "TouchPadPS2*"} | ForEach-Object {
  $verticalPath = Join-Path $_.PSPath "2FVerticalScrolling"
  if (-not (Get-ItemProperty -Path $verticalPath -Name "UserZoneFlags" -ErrorAction SilentlyContinue)) {
    New-ItemProperty -Path $verticalPath -Name "UserZoneFlags" -Value 5 -Type DWORD
  } else {
    Set-ItemProperty -Path $verticalPath -Name "UserZoneFlags" -Value 5 -Type DWORD
  }
}
#>

2. Run PowerShell, and paste there following code, (don't forget to change X:\Your\Path\To\Script.ps1):

start powershell -verb runas -args "-ep bypass -f X:\Your\Path\To\Script.ps1"

3. Enjoy!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment