
Estou tendo dificuldades para entender como funciona a matriz de transformação xinput de uma tela sensível ao toque (Goodix Capacitive TouchScreen).
Estou usando um tablet com Linux instalado para controlar um PC remoto viassh-rdp. A resolução do PC remoto é 1920x1080 e a resolução nativa do tablet é 2160x1440. Ao alterar a resolução do tablet para 1920x1080, a imagem ocupa toda a largura, mas não toda a altura; ele é cortado acima e abaixo. O problema é que as coordenadas xinput da tela sensível ao toque continuam a usar a tela inteira; verticalmente, eles estão corretos no centro, mas desalinhados em direção à borda superior ou inferior.
Achei que dimensionar a altura usando a matriz, dimensionar a altura e compensar y, ou mesmo apenas compensar y, seria suficiente, mas todas as tentativas que fiz me deram resultados inconsistentes (ponteiro completamente desalinhado).
Aparentemente, estou faltando alguma coisa sobre como a matriz deve ser usada para remapear as coordenadas. O que me interessa é ignorar a área cortada e mapear as coordenadas verticais 180-1260 para 0-1080 ou, alternativamente, compensar Y em 180, para que 180 nativo se torne 0.
Eu tentei xinput_calibrator
, o que teoricamente suporta, xinput
mas na --output-type
verdade me deu um erro XorgPrint Calibrator does not support the supplied --output-type
. Error: unable to apply or save configuration values
Não estou interessado em uma configuração do Xorg; Quero poder alterar a matriz com um script. Existem outras ferramentas GUI que podem gerar a matriz correta para usar com o xinput?
Editar: