Chciałbym określić, do którego procesu należy okno w Wayland. Czy istnieje coś takiego jak xprop
dla X, który pozwala użytkownikowi wybrać okno, klikając i wyświetla wszystkie szczegóły okna, w tym PID?
window-management
wayland
czerny
źródło
źródło
xprop
? Pokazuje okropnie dużo szczegółów przez okno za pośrednictwem XWayland, w tym_NET_WM_PID(CARDINAL)
, który jest procesem PID inicjatora.Odpowiedzi:
Dobra wiadomość, istnieje coś takiego wbudowanego w Gnome Shell, w przeciwieństwie
xprop
do Xorg i Wayland. Ostatecznie może to wpaść w sferę innych narzędzi, jeśli używasz KDE, i3 lub czegoś innego.Na początek wpisz na klawiaturze klawisze „ALT + F2”, co spowoduje wyświetlenie takiego menu:
Po tym pojawia się polecenie
lg
(dla „lusterka”).Spowoduje to wyświetlenie wyglądającego szklanego okna, z którego możemy wydobyć informacje o oknie. Wybierz „okno” w prawym górnym rogu lusterka:
Tam zobaczysz listę okien, z której możesz kliknąć nazwę okna, które chcesz zidentyfikować.
W tym przypadku wybrałem gedit na przykład:
W górnym wierszu tego wyniku można zauważyć:
Inspecting object: object instance proxy GType: MetaWindowX11 ...`
„GType” będzie jednym z MetaWindowX11 lub MetaWindowWayland.
Te informacje pochodzą zgodnie z https://fedoraproject.org/wiki/How_to_debug_Wayland_problems
Ja
źródło
Istnieje projekt
xdg-foreign
rozszerzenia protokołu , który pozwala uzyskać uchwytywl_surface
, utworzone przez innych klientów Wayland. Mając uchwyt, możesz uzyskać z niego wszystko, co możesz uzyskać z powierzchni swojego klienta. Jednak ten protokół wciąż ma ograniczenia:xprop
. W rzeczywistości możesz rysować nawet na obcych powierzchniach!Jest więc mało prawdopodobne, aby stał się ogólnym sposobem uzyskiwania parametrów powierzchni od dowolnego klienta przez dowolnego klienta. Ale nie trać nadziei: istnieje wiele przykładów w historii technologii, gdy technologia, pierwotnie zaprojektowana do jakiegoś celu, stała się szeroko stosowana do innych celów, podobnie jak zapalniczki samochodowe lub interfejsy API ułatwień dostępu w systemie Android. Co więcej, w przyszłości może pojawić się rozszerzenie protokołu, które będzie bardziej odpowiednie dla twojego zadania, ponieważ jest to zdecydowanie potrzebne (na przykład do śledzenia czasu).
źródło