노트북의 터치스크린 + 스타일러스를 스타일러스가 감지되면 터치 장치가 꺼지므로 글을 쓰는 동안 화면에 손을 대고 있을 수 있도록 구성하려고 합니다. xinput 출력에서 "근접성"을 확인하여 이를 수행하는 스크립트를 작성할 수 있지만 좋은 응답 시간을 얻으려면 스크립트가 초당 여러 번 확인해야 합니다.
스타일러스 근접성이 항상 xinput 출력을 보지 않기 위해 어떻게든 캡처할 수 있는 이벤트를 생성하는지 궁금합니다... acpi_listen에는 아무 것도 표시되지 않습니다. 어떤 팁이 있나요?
고마워요, 스테파노
답변1
다음은 나에게 효과적이었습니다.
STYLUS_ID=11 # replace with ID or name of your stylus
TOUCH_ID=9 # replace with ID or name of your touch screen
xinput test -proximity "$STYLUS_ID" |
while read line; do
if [[ $line == *out* ]]; then
xinput enable "$TOUCH_ID"
else
xinput disable "$TOUCH_ID"
fi
done
스타일러스 상태를 폴링하는 대신 디스플레이 장치 이벤트의 무한 루프 test
에 들어가는 옵션을 사용합니다. 맨 페이지 :xinput
proximity
xinput
test [-proximity] device
Register all extended events from device and enter an endless loop
displaying events received. If the -proximity is given, ProximityIn
and ProximityOut are registered.