Chcesz napisać proste narzędzie, które zrobi zrzuty ekranu w Wayland. Czy mam rację z moim przekonaniem, że byłby zupełnie inny niż Xorg? Czy ktokolwiek mógłby podać mi przykłady?Jak zrobić zrzut ekranu pod Waylandem?
Odpowiedz
Twoje pytanie jest trochę nieokreślone. Nie musisz pisać narzędzia, dopóki używasz komponentu odniesienia Weston
dla. Ma tę funkcję wbudowaną. Możesz użyć Super + S
, aby zrobić zrzut ekranu i Super + R
, aby nagrać film w formacie *.wcap
, który możesz następnie przekonwertować na wideo *.webm
.
Jeśli naprawdę powinieneś być zainteresowany pisaniem takiego narzędzia, powinieneś spojrzeć na kod źródłowy Weston
tutaj:i znaleźć odpowiednie części.
Tak, zrzuty ekranu działają zupełnie inaczej na uwięzi niż na Xorg.
Zgodnie z projektem, Wayland jest dużo bardziej bezpieczny niż X11 i nie pozwala jednej aplikacji do przechwytywania zawartości okien innych aplikacji, meanignath narzędzie zrzut ekranu X11 oparta nie może pracować underWayland/Xwayland.
https://bugs.freedesktop.org/show_bug.cgi?id=98672
Niestety nie mogę powiedzieć, jak to jest inny, po prostu, że jest inaczej.
Użyłem migawki, ale zawiodłem w Wayland.
gnome-screenshot współpracuje z Waylandem, ale samo w sobie jest niezgrabne, jeśli chodzi o zmianę nazwy plików zaraz po tym, jak je zgarniesz.
zrobiłem 2 skrypty: shut.sh
#!/bin/sh
# call me shut.sh
gnome-screenshot -a -f /path/to/temp/grabcache.png
gnome-terminal -e "bash grabname.sh"
i grabname.sh
#!/bin/sh
# call me grabname.sh
read -p "Name for grab? " grab
cp /path/to/temp/grabcache.png /where/you/want/it/$grab.png
nautilus /path/to/temp
teraz zdefiniować klawisz skrótu do uruchomienia shut.sh. Będziesz musiał podać dokładne ścieżki do każdego skryptu, chyba że zapiszesz skrypty do lokalizacji w zmiennej $ PATH dla powłoki.
Następnie, po naciśnięciu klawisza na ekranie pojawi się krzyżyk, aby wybrać cel chowania. To oszczędza grabcache.png do/path/to/temp.
Po zakończeniu, terminal otworzy się i poprosi o podanie nazwy pliku do skopiowania grabcache.png do $ grab in/where/you/want/it. Następnie powinien otworzyć się nautilus, aby pokazać nowy chwyt o zmienionej nazwie. Jeśli nautilus jest już otwarty, możesz mieć ALT-TAB ręcznie.