X.org 포인터 잡아 소유자 찾기


17

마우스를 잡은 것 같은 응용 프로그램이 있습니다 (움직일 수는 있지만 아무 곳이나 클릭 할 수는 없습니다). X.org 마우스 잡기를 소유 한 응용 프로그램을 찾는 방법이 있습니까?

마우스를 놓기 위해 여기주어진 바로 가기 가 작동하지 않아서 더 많은 정보를 줄 수있는 것에 관심이 있습니다.


이것이 문제가 확실합니까? 이 작업을 수행하기 위해 사용하지 않는 응용 프로그램은 다소 기괴 할 수 있습니다 (그렇다면 해당 응용 프로그램 사용을 중단 할 것입니다). 이것이 실제로 원인이라면 가능성이 있습니다.
금발 미녀

나는 시행 착오를 통해 어떤 것 (와인 앱)이 그랩을 풀 때까지 몇 가지를 죽이는 것을 발견했습니다.
Tobu

답변:


16

이 커밋에XF86LogGrabInfo 도입 된 키 를 눌러이 작업을 수행 할 수 있습니다 .

기본적으로이 키 심은 실제 키 또는 키 조합에 바인딩되지 않습니다. 그러나 여전히 다음을 사용하여 활성화 할 수 있습니다 xdotool.

xdotool key "XF86LogGrabInfo"

해당 명령을 실행하면 활성 잡기 목록이 X 로그에 기록됩니다. 우분투에서 적어도 이것은입니다 /var/log/Xorg.0.log. 로그 파일 끝 근처에 있지만 그 아래에는 관련이없는 여러 로그 메시지가있을 수 있습니다. 횡령이 없으면 다음과 같이 씁니다.

[1199271.146] (II) Printing all currently active device grabs:
[1199271.146] (II) End list of active device grabs

잡기가 있으면 (여기서 Firefox에서 메뉴를 열었을 때) 다음과 같이 기록됩니다.

[1199428.782] (II) Printing all currently active device grabs:
[1199428.782] Active grab 0x4c00000 (core) on device 'Virtual core pointer' (2):
[1199428.782]       client pid 15620 /usr/lib/firefox/firefox 
[1199428.782]       at 1199423728 (from active grab) (device thawed, state 1)
[1199428.782]         core event mask 0x7c
[1199428.782]       owner-events true, kb 1 ptr 1, confine 0, cursor 0x0
[1199428.782] (II) End list of active device grabs

2

방금 비슷한 문제가 있었고 X11이 중간 버튼을 눌렀다 놓지 않았다고 생각하는 버그로 좁혔습니다. mouseup 이벤트가있을 때까지 물리적으로 마우스를 분리해도 도움이되지 않습니다.

xdotool mousedown 2창을 사용하여 초점을 전환하는 것은 불가능합니다.

xdotool key XF86LogGrabInfo 현재 초점이 맞춰진 프로세스 창을 보여 주지만, 하나가 종료되면 다른 창이 초점을 받고 동일한 시나리오가 계속됩니다.

해결 방법 : issue xdotool mouseup 2.

업데이트 : 중간 버튼을 눌렀다가 놓지 않는 것은 가장 눈에 띄지 않습니다. 대부분의 앱이 응답하지 않기 때문에 일부 마우스에는이 버튼이 없어서 문제가 사라 졌는지 확인할 수 있습니다.


0

Xorg 로그의 항목은 해독 할 수 없습니다. 나는 그것들을 파싱하고 인간이 다루기 쉬운 형태로 제시하는 프로그램을 작성했다.

https://gist.github.com/CyberShadow/6412d11aea64144f8905cc0b8196f38e

사용하려면 xdotool key XF86LogGrabInfo기계 달팽이의 답변에 설명 된대로 먼저 실행하십시오 . 그런 다음 위에 링크 된 프로그램을 실행하십시오. Xorg 로그 파일이에없는 /var/log/Xorg.0.log경우 --xorg-log옵션을 사용하여 해당 위치를 지정할 수 있습니다 . 자세한 내용 --help을 참조하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.