Wayland를 클릭하여 창을 식별하는 방법


15

Wayland에서 창이 속한 프로세스를 식별하고 싶습니다. xpropX 와 같이 사용자가 클릭하여 창을 선택하고 PID를 포함한 모든 창 세부 정보를 출력 할 수있는 것이 있습니까?


xprop와 같은 명령이 있을지 의심됩니다. Wayland의 주요 목표 중 하나는 다른 프로세스의 창에 대한 액세스를 제한하는 것입니다.
mviereck

@mviereck 확실히 슈퍼 유저는 Wayland에서도 창 정보를 볼 수 있습니까?
Nathaniel M. Beaver

@bariumbitmap : 컴포 지터가 파일이나 API를 통해 자체 메모리 외부에서 이러한 정보를 제공하는 경우에만 해당됩니다. 나는 그러한 사양을 알지 못하지만 (존재 할 수도 있음). 물론 모든 컴포 지터에 대한 일반적인 솔루션이 필요하지 않은 경우 weston과 같은 컴포 지터를 포크하고 직접 구현할 수 있습니다.
mviereck

왜 안돼 xprop? XWayland를 통해 창을 통해 엄청나게 많은 세부 사항을 보여줍니다 _NET_WM_PID(CARDINAL).
istepaniuk

답변:


1

좋은 소식은 Gnome Shell에 내장되어 xprop있으며 Xorg Wayland 와의 작업 과는 다른 것 입니다. KDE, i3 또는 다른 것을 사용하는 경우 궁극적으로 이것은 다른 툴링 영역에 속할 수 있습니다.

우선 키보드에서 "ALT + F2"키를 입력하면 다음과 같은 메뉴가 나타납니다.

고도 피트

그런 다음 명령을 실행하십시오 lg( "looking glass").

그러면 유리 정보창을 불러 와서 창 정보를 추출 할 수 있습니다. 유리의 오른쪽 상단에서 "창"을 선택하십시오.

창 섹션

여기에서 식별하려는 창의 이름을 클릭 할 수있는 창의 목록이 표시됩니다.

명부

이 경우, 예를 들어 gedit를 선택했습니다.

gedit

해당 출력의 맨 위 줄에서 다음을 확인할 수 있습니다.

Inspecting object: object instance proxy GType: MetaWindowX11 ...`

"GType"은 MetaWindowX11 또는 MetaWindowWayland 중 하나입니다.

이 정보는 https://fedoraproject.org/wiki/How_to_debug_Wayland_problems에 따라 제공됩니다

나는


3
그러면 나열된 창을 실행하는 프로세스의 PID를 찾을 수 있습니까?
czerny

0

초안 xdg-foreign프로토콜 확장 의 핸들을 얻을 수 있으며, wl_surface다른 WAYLAND 클라이언트에서 생성들 '. 손잡이가 있으면 클라이언트 표면에서 얻을 수있는 모든 것을 얻을 수 있습니다. 그러나이 프로토콜에는 여전히 제한이 있습니다.

  • 분명히 클라이언트에서 구현하지 않으면 작동하지 않습니다.
  • 서로 를 알고있는 클라이언트를 대상으로 하므로이를 트리거하는 방법을 제공하지 않습니다. 클라이언트는 확장 기능이 적용되지 않는 방식으로 외국 클라이언트와 통신합니다. 그런 다음 외부 클라이언트는이 확장을 통해 클라이언트에 대한 핸들을 게시합니다.
  • 에 비해 너무 많은 제어권을 얻습니다 xprop. 실제로, 당신은 이물질 표면에 그릴 수 있습니다!

따라서 이것은 클라이언트가 클라이언트로부터 표면 매개 변수를 얻는 일반적인 방법이 될 가능성이 없습니다. 그러나 희망을 잃지 마십시오. 처음에는 어떤 목적으로 설계된 기술이 자동차 담배 라이터 또는 Android의 접근성 API와 같이 다른 목적으로 널리 사용되었을 때 기술 역사에는 많은 예가 있습니다. 또한 향후에는 시간 추적기 등의 작업이 필요하기 때문에 작업에 더 적합한 프로토콜 확장이 나타날 수 있습니다.

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