Ottimizzazione del touchpad di precisione (linee guida per l'ottimizzazione del touchpad)
Esistono diversi approcci che un OEM può adottare per regolare l'esperienza di touchpad predefinita nel dispositivo basato su Windows. I valori predefiniti soddisfano le esigenze della maggior parte degli utenti, quindi devono essere modificati solo se non forniscono l'esperienza specifica desiderata dall'OEM (e nel caso di HorizontalOffset/SpaceBarOffset, che devono essere sempre impostati).
Nota
Tenere presente che possono verificarsi gravi problemi se il Registro di sistema viene modificato in modo non corretto. Assicurarsi che questi passaggi vengano eseguiti attentamente. Per una protezione aggiuntiva, eseguire il backup del Registro di sistema prima della modifica. Vedere Come eseguire il backup e il ripristino del Registro di sistema in Windows.
I valori del Registro di sistema ottimizzabili descritti di seguito si trovano tutti nella chiave hardware HKR del dispositivo touchpad:
- Introduzione alle chiavi del Registro di sistema per i driver
- Direttiva INF AddReg del driver di dispositivo
- Apertura della chiave hardware di un dispositivo
HKEY_LOCAL_MACHINE (HKLM)
Nelle versioni di Windows precedenti alla versione 1903 era supportata solo la posizione globale. Il percorso globale predefinito è:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\PrecisionTouchPad
In Windows, versione 1903 e successive, ognuno dei valori del Registro di sistema in questa guida viene prima verificato sotto la chiave HKR e quindi sotto la HKEY_LOCAL_MACHINE
chiave successiva, se non trovato. In questo modo è possibile eseguire l'override delle impostazioni predefinite in HKLM usando il percorso HKR in base al valore.
Prevenzione accidentale dell'attivazione
AAP è una funzionalità di Touchpad di precisione che elimina determinate azioni come gli spostamenti del mouse e i tocco per un breve periodo di tempo dopo gli eventi di tastiera. I timeout specifici dipendono dal tipo di azione e dall'area del touchpad che riceve l'input, nonché dall'impostazione utente denominata Sensibilità touchpad rilevata nelle impostazioni del Touchpad. Più sensibile significa che meno tempo viene impiegato per eliminare l'input dopo gli eventi di tastiera. La sensibilità massima indica che i timeout AAP sono zero e AAP non è attivo.
Parametri ottimizzabili
Windows definisce due classi di aree "Sip" sul touchpad per evitare input accidentali quando gli utenti si posizionano le mani sulla tastiera o sul touchpad durante l'uso normale. In questo modo il touchpad viene suddiviso in tre aree:
- Area di riservatezza elevata: l'eliminazione dell'input è minima in questa area
- Area sipario: l'input può essere eliminato per un certo periodo di tempo in questa area
- Area supercurtain: alcuni tipi di input, ad esempio i tap, vengono quasi sempre eliminati quando l'input ha origine con questa area
Anche quando si specificano le dimensioni delle tende in modo esplicito, è consigliabile fornire le informazioni di posizionamento del touchpad fisico tramite SpaceBarOffset
e HorizontalOffset
. Questo è necessario per Windows per prendere decisioni relative a un'esperienza utente coerente e prevedibile quando si passa dalla tastiera al punto. Per altre informazioni, vedere la Guida all'integrazione dei dispositivi touchpad di Precisione di Windows.
Tende
Se vengono trovati i tre valori CurtainLeft
, CurtainRight
e CurtainTop
, le tende verranno costruite usando queste come distanze dai rispettivi bordi. Se non vengono trovati tutti e tre questi valori, verrà usata la configurazione legacy (vedere Tende legacy di seguito), seguita dalle impostazioni predefinite.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
Sipario | DWORD | Himetric | +0 | 0 | Windows 10, versione 1903+ |
SiparioLeft | DWORD | Himetric | +0 | 0 | Windows 10, versione 1903+ |
Sipario | DWORD | Himetric | +0 | 0 | Windows 10, versione 1903+ |
CurtainBottom (facoltativo) | DWORD | Himetric | +0 | 0 | Windows 10, versione 1903+ |
Tende (implicito)
L'algoritmo legacy per la configurazione delle tende cambia le dimensioni delle tende a seconda della posizione verticale dell'evento touchpad e non è flessibile per la personalizzazione. In futuro, è consigliabile impostare solo SpaceBarOffset
i valori e HorizontalOffset
, e le tende devono essere altrimenti configurate tramite CurtainTop
, ecc. descritto in precedenza.
L'area ad alta sensibilità è progettata per rimanere reattiva anche durante o immediatamente dopo l'uso di keybaord.
La larghezza dell'area su entrambi i lati della linea centrale (Larghezza zona nel diagramma precedente) è definita come:
SpacebarOffset + AAPNonCurtainBaseWidth
Si noti che questo significa che la larghezza totale dell'area è due volte questo valore. SpacebarOffset
viene preso in considerazione per l'area, poiché la prossimità alla tastiera aumenta il rischio di contatto palmo.
L'altezza dell'area è definita in relazione alla barra spaziatrice e si estende fino alla parte inferiore del touchpad. La distanza dalla parte superiore della zona è definita come:
AAPNonCurtainTop - SpaceBarOffset
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
SpaceBarOffset | DWORD | Himetric | +0 | 1000 | Windows 8.1 + |
Horizontaloffset | DWORD | Himetric | Any | 0 | Windows 8.1 - Windows 10, versione 1511 per 0+ intervallo, Windows 10, versione 1511+ per qualsiasi intervallo |
HorizontalOffsetIsNeg | DWORD | Himetric | 0-1 | 0 | Windows 8.1 +, deprecato in Windows 10, versione 1511 |
AAPNonCurtainTop | DWORD | Himetric | +0 | 1500 | Windows 10, versione 1607+ |
AAPNonCurtainBaseWidth | DWORD | Himetric | +0 | 1500 | Windows 10, versione 1607+ |
Tende super
La zona di riservatezza con restrizioni è l'area di riservatezza più bassa del touchpad. È progettato per l'area del touchpad in cui gli utenti non lasciano le dita durante l'uso intenzionale. Si noti che questi sono molto piccoli per impostazione predefinita e devono essere ampliati solo per dispositivi molto grandi.
Le dimensioni delle zone superiore, sinistra e destra vengono definite in modo indipendente come distanza dal rispettivo bordo. Usano le chiavi del Registro di sistema illustrate nella tabella seguente.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
SuperCurtainTop | DWORD | Himetric | +0 | 100 | Windows 10, versione 1511+ |
SuperCurtainLeft | DWORD | Himetric | +0 | 100 | Windows 10, versione 1511+ |
SuperCurtainRight | DWORD | Himetric | +0 | 100 | Windows 10, versione 1511+ |
SuperCurtainBottom | DWORD | Himetric | +0 | 100 | Windows 10, versione 1903+ |
Area di clic con il pulsante destro del mouse
I valori del Registro di sistema seguenti consentono la configurazione della zona di clic con il pulsante destro del mouse. L'altezza è espressa da RightClickZoneHeight
come percentuale dell'altezza dell'intero touchpad misurato dal bordo inferiore. RightClickZoneWidth
è anche una percentuale della larghezza, misurata dal bordo destro della mano destra e il bordo sinistro nelle configurazioni a sinistra quando è abilitata l'opzione scambia pulsanti del mouse.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
RightClickZoneHeight | DWORD | Percentuale | 1-100 | 25 | Windows 10, versione 1507+ |
RightClickZoneWidth | DWORD | Percentuale | 1-100 | 50 | Windows 10, versione 1507+ |
Eliminazione della protezione dell'attivazione accidentale
L'impostazione della chiave seguente equivale alla scelta dell'utente "Più sensibile", che disabilita AAP. Quando questo tasto è impostato, l'impostazione di riservatezza touchpad in Windows Impostazioni (illustrato sopra) non ha alcun effetto.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\PrecisionTouchPad\AAPDisabled
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
AAPDisabled | DWORD | n/d | 0-1 | 0 | Windows 10, versione 1511+ |
Rilevamento della raccolta del mouse da tastiera come non mouse
Windows fornisce un'impostazione del Registro di sistema che consente di esentare dispositivi specifici. Questo è disponibile in: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\PrecisionTouchPad\IgnoredExternalMice
Strutturare questo tasto è simile a forzare l'abilitazione di un touchpad legacy. Per altri dettagli, vedere Rilevamento forzato del touchpad legacy.
HKEY_CURRENT_Uedizione Standard R (HKCU)
Gli OEM sono in grado di modificare le impostazioni del touchpad dell'utente modificando i valori del Registro di sistema HKCU seguenti. Tutti i valori si trovano nella chiave HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\PrecisionTouchPad
del Registro di sistema . Per modificare le impostazioni predefinite usate quando viene creato un nuovo profilo utente, è necessario apportare modifiche all'hive del Registro di sistema che si trova in %SystemDrive%\Users\Default\NTUSER.DAT
.
Lasciare il touchpad quando un mouse è connesso
Questa impostazione specifica se il touchpad può rimanere attivo quando è presente un mouse esterno. Quando non è attivo, qualsiasi input prodotto dal touchpad viene ignorato.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
LeaveOnWithMouse | DWORD | n/d | 0-1 | 1 | Windows 10, versione 1511+ |
Velocità cursore
Questa impostazione specifica la frequenza con cui il movimento del mouse prodotto dal touchpad sposta il cursore. I valori validi sono compresi tra 1 e 20. L'interfaccia utente per questa impostazione limita l'intervallo a 2-20 con un passaggio pari a 2.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
CursorSpeed | DWORD | n/d | 1-20 | 10 | Windows 10, versione 1511+ |
Fare clic sulla riservatezza
Questa impostazione specifica la sensibilità relativa del rilevamento clic aptico del touchpad, se supportato. I valori validi sono compresi tra 0 e 100 inclusi. L'interfaccia utente per questa impostazione limita l'intervallo a 0-100 con un passaggio di 50. Questa è l'impostazione rivolta all'utente per il report della funzionalità "Pulsante Pressione soglia".
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
ClickForceSensitivity | DWORD | Percentuale | 0-100 | 50 | Windows 11, build 26027+ |
Sezione "Feedback touchpad"
Windows offre la possibilità di modificare le impostazioni nella sezione Feedback touchpad delle impostazioni del Touchpad.
Feedback abilitato
Questa impostazione specifica se il feedback aptico è abilitato nei touchpad in cui è supportato.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
FeedbackEnabled | DWORD | n/d | 0-1 | 1 | Windows 11 |
Nota
Per garantire un'esperienza utente ottimale, il feedback aptico deve essere abilitato per impostazione predefinita. Pertanto, questo valore deve rimanere impostato su 1
.
Intensità
Questa impostazione specifica l'intensità relativa del feedback aptico del touchpad, se supportato. I valori validi sono compresi tra 0 e 100 inclusi. L'interfaccia utente per questa impostazione limita l'intervallo a 0-100 con un passaggio di 25. Questa è l'impostazione rivolta all'utente per il report sulle funzionalità "Intensità aptico".
Nota
Per garantire un'esperienza utente ottimale, il feedback aptico deve essere abilitato per impostazione predefinita. Pertanto, questo valore deve essere impostato su un valore diverso da zero.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
FeedbackIntensity | DWORD | Percentuale | 0-100 | 50 | Windows 11 |
Sezione "Taps"
Windows offre la possibilità di modificare le impostazioni nella sezione Taps delle impostazioni del Touchpad.
Sensibilità touchpad
Questa impostazione specifica il livello di riservatezza del touchpad. Più sensibile è il touchpad, minore è l'eliminazione della generazione dell'input del mouse dopo l'attività della tastiera. I valori più bassi corrispondono a una maggiore sensibilità (ovvero 0 indica la sensibilità più alta).
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
AAPThreshold | DWORD | n/d | 0-4 | 2 | Windows 10, versione 1511+ |
Toccare con un solo dito per fare clic con un solo clic
Questa impostazione specifica se i tap con un solo dito sono abilitati.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
TapsEnabled | DWORD | n/d | 0-1 | 1 | Windows 10, versione 1511+ |
Toccare con due dita per fare clic con il pulsante destro del mouse
Questa impostazione specifica se i tap a due dita sono abilitati.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
TwoFingerTapEnabled | DWORD | n/d | 0-1 | 1 | Windows 10, versione 1511+ |
Toccare due volte e trascinare su selezione multipla
Questa impostazione specifica se il movimento di tocco e trascinamento è abilitato.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
TapAndDrag | DWORD | n/d | 0-1 | 1 | Windows 10, versione 1511+ |
Premere l'angolo inferiore destro del touchpad per fare clic con il pulsante destro del mouse
Questa impostazione specifica se premendo il touchpad nell'angolo inferiore destro viene generato un clic con il pulsante destro del mouse anziché un clic sinistro. Se l'utente ha scambiato i pulsanti sinistro e destro del mouse (GetSystemMetrics(SM_SWAPBUTTON)
è true), la zona di clic con il pulsante destro del mouse viene rispecchiata orizzontalmente nell'angolo inferiore sinistro del touchpad.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
RightClickZoneEnabled | DWORD | n/d | 0-1 | 1 | Windows 10, versione 1511+ |
Sezione "Scroll & zoom"
Windows offre la possibilità di modificare le impostazioni con la sezione Scroll & zoom delle impostazioni del Touchpad.
Nota
Attualmente non è possibile modificare la velocità di scorrimento o zoom di un touchpad.
Trascinare due dita per scorrere
Questa impostazione specifica se la panoramica a due dita è abilitata.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
PanEnabled | DWORD | n/d | 0-1 | 1 | Windows 10, versione 1511+ |
Direzione di scorrimento
Questa impostazione specifica se il contenuto della direzione scorre tramite la panoramica a due dita viene invertito. Nello stato predefinito, verso l'alto il movimento dei contatti sul touchpad comporta lo scorrimento del contenuto verso il basso e verso sinistra movimento dei contatti risultati sullo scorrimento dei contenuti verso destra.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
ScrollDirection | DWORD | n/d | 0-1 | 0 | Windows 10, versione 1511+ |
Zoom con avvicinamento delle dita
Questa impostazione specifica se lo zoom a due dita è abilitato.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
ZoomEnabled | DWORD | n/d | 0-1 | 1 | Windows 10, versione 1511+ |
Impostazioni senza interfaccia utente
Le impostazioni seguenti sono supportate da Windows, ma non sono esposte all'utente nell'applicazione Impostazioni.
Accelerazione del mouse
Questa impostazione specifica se il movimento del mouse prodotto dal touchpad rispetta l'impostazione di accelerazione del mouse dell'utente come restituito da SystemParametersInfo(SPI_GETMOUSE)
. Se 0, il movimento del mouse avrà sempre l'accelerazione applicata.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
HonorMouseAccelSetting | DWORD | n/d | 0-1 | 0 | Windows 10, versione 1511+ |
Fare clic con il pulsante destro del mouse sulla larghezza della zona
Questa impostazione specifica la larghezza relativa della zona di clic con il pulsante destro del mouse del touchpad. I valori validi sono compresi tra 0 e 100 inclusi. Se diverso da zero, esegue l'override della configurazione del dispositivo.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
RightClickZoneWidth | DWORD | Percentuale | 0-100 | 0 | Windows 11, build 26027+ |
Fare clic con il pulsante destro del mouse sull'altezza della zona
Questa impostazione specifica l'altezza relativa del touchpad della zona di clic con il pulsante destro del mouse del touchpad. I valori validi sono compresi tra 0 e 100 inclusi. Se diverso da zero, esegue l'override della configurazione del dispositivo.
Valore del Registro di sistema | Type | Insieme unità misura | Intervallo | Valori predefiniti | Disponibilità |
---|---|---|---|---|---|
RightClickZoneHeight | DWORD | Percentuale | 0-100 | 0 | Windows 11, build 26027+ |
Esecuzione dinamica di query e modifica delle impostazioni
A partire da Windows 11, build 26027, le impostazioni del touchpad dell'utente possono essere sottoposte a query e modificate dinamicamente tramite l'API SystemParametersInfo
. Ad esempio:
// Get the user's touchpad settings.
TOUCHPAD_PARAMETERS params = {};
params.versionNumber = TOUCHPAD_PARAMETERS_LATEST_VERSION;
RETURN_IF_WIN32_BOOL_FALSE(
::SystemParametersInfo(SPI_GETTOUCHPADPARAMETERS, sizeof(params), ¶ms, 0 /*fWinIni*/));
// Override the touchpad's right-click zone to have a 50% width and 33% height.
// NOTE: changing user settings should only be performed in response to explicit user intent.
params.rightClickZoneWidth = 50;
params.rightClickZoneHeight = 33;
RETURN_IF_WIN32_BOOL_FALSE(
::SystemParametersInfo(SPI_SETTOUCHPADPARAMETERS, sizeof(params), ¶ms, SPIF_UPDATEINIFILE | SPIF_SENDCHANGE));
Come per qualsiasi chiamata a SystemParametersInfo
, il processo deve essere in esecuzione con l'account dell'utente affinché le impostazioni vengano sottoposte a query o modificate correttamente.