Mitigação: Suporte a toque e caneta baseados em ponteiro
Os aplicativos WPF destinados ao .NET Framework 4.7 e em execução no Windows a partir do Windows 10 Creators Update podem habilitar uma pilha de toque/caneta WPF baseada em opcionais WM_POINTER
.
Impacto
Os desenvolvedores que não habilitam explicitamente o suporte a toque/caneta baseado em ponteiro não devem ver nenhuma alteração no comportamento de toque/caneta do WPF.
A seguir estão os problemas conhecidos atuais com a pilha de toque/caneta baseada em opcional WM_POINTER
:
Sem suporte para tinta digital em tempo real.
Embora os plug-ins de tinta digital e caneta ainda funcionem, eles são processados no thread da interface do usuário, o que pode levar a um desempenho ruim.
Mudanças comportamentais devido a mudanças na promoção de eventos de toque/estilete para eventos com mouse.
A manipulação pode comportar-se de forma diferente.
Arrastar/soltar não mostrará o feedback apropriado para a entrada por toque. (Isso não afeta a entrada da caneta.)
Arrastar/soltar não pode mais ser iniciado em eventos de toque/caneta.
Isso pode potencialmente fazer com que o aplicativo pare de responder até que a entrada do mouse seja detetada. Em vez disso, os desenvolvedores devem iniciar o recurso de arrastar e soltar a partir de eventos do mouse.
Optar pelo suporte tátil/estilete baseado em WM_POINTER
Os desenvolvedores que desejam habilitar essa pilha podem adicionar o seguinte ao arquivo app.config de seu aplicativo.
<configuration>
<runtime>
<AppContextSwitchOverrides value="Switch.System.Windows.Input.Stylus.EnablePointerSupport=true"/>
</runtime>
</configuration>
Remover essa entrada ou definir seu valor para false
desativar essa pilha opcional.