나는 "가짜" 입력 이벤트가 X11 클라이언트로 전송되도록 허용하는 X11 프록시 서버 프로그램을 작성했습니다. 먼저 프록시 서버를 시작해야 합니다
export DISPLAY=:2 myClientProgram
. 그러면 프록시 서버가 메시지를 전달할 것입니다.내 클라이언트 프로그램기본 X11 서버에 또는 그 반대로 요청 시 가짜 입력 메시지를 삽입합니다.
문제는 가짜 입력 메시지를 삽입할 때마다내 클라이언트 프로그램입력 포커스를 요청합니다. 이로 인해 다른 활동에 컴퓨터를 사용할 수 없습니다. 항상 입력 포커스를 잃은 채 무언가를 쓰려고 한다고 상상해 보십시오. 그것은 불가능합니다.
예방할 수 있는 해결책이 있는지 이해하려고 노력했습니다.내 클라이언트 프로그램입력 포커스를 가져옵니다. 나의 현재 이해는 '아니요'입니다. 그래서 새롭고 색다른 접근 방식을 추구하고 싶었습니다.
한 컴퓨터에서 두 개의 X11 서버를 실행하고 두 서버 간에 전환할 수 있는 방법이 있습니까? 솔루션이 다음과 같은 것을 사용하는 경우 Xephyr
중요합니다 .기본X 서버는아니요GPU를 사용하세요.내 클라이언트 프로그램Nvidia 그래픽 카드가 필요하지만 하나만 가지고 있습니다. 일상 업무(웹 검색, 코딩, 문서 작성 등)에 사용하는 X 서버가 llvmpipe를 사용한다면 완벽하게 괜찮을 것입니다.
특히, X 서버가 실행 중인 터미널을 열려는 경우 이는 중요합니다.내 클라이언트 프로그램, glxinfo
내 그래픽 카드를 렌더링 장치로 반환해야 합니다.