XY 문제인 경우 일부 상황에서는 랩톱을 사용하고 때로는 외부 모니터에 연결합니다. 외부 모니터에 연결하면 노트북 화면이 아닌 게임이 화면에 표시되기를 바라는데, 메인 모니터에 표시되도록 하드코딩되는 경향이 있습니다. (전환할 때 메인 모니터의 해상도가 제한되는 경향이 있으며 외부 모니터의 해상도가 노트북보다 높습니다.) 저는 메인 모니터를 노트북 화면에 두는 것을 선호합니다. 저와 기본 모니터를 전환하면 일부 KDE 레이아웃이 엉망이 됩니다.
주요 질문에 관하여: 시스템의 나머지 부분이 이를 기본 모니터로 인식하지 않고 모니터가 기본 모니터임을 특정 프로그램에 알리고 싶습니다. 이상적으로는 모니터가 연결되어 있지 않을 때 기본적으로 노트북 화면으로 돌아가는 방식으로 수행됩니다. 이를 수행할 수 있는 방법이 있습니까?
답변1
이는 XY 문제일 수 있습니다.
스팬 모드에서 X11은 일반적으로 시작 x, y 좌표 0,0을 제공하고 보조 화면을 해당 좌표에 수평 또는 수직으로 연결하여 "기본 모니터" 상태를 제어합니다. 세션 관리자가 도구 모음 위치에 대한 특정 화면을 지정할 수도 있고 애플리케이션이 내부적으로 기본 화면을 수락할 수도 있지만 이는 홈 화면과 동일하지 않습니다.
외부 디스플레이가 기본 디스플레이라고 생각하도록 애플리케이션을 속이는 대신 단일 화면 및 다중 화면 구성에 대해 세션 설정을 별도로 저장하는 확장 프로그램을 사용하세요. 이 작업을 수행할 수 있는 gnome-shell 확장이 있지만 KDE에서 사용할 수 있는 것이 무엇인지 모르겠습니다. 그렇더라도 적어도 처음에는 두 화면 모두에 대한 세션을 재구성해야 합니다.
또 다른 방법은 애플리케이션에 사용할 화면(명령줄 옵션? 내부 설정?)을 알려주거나 shim에서 실행하여 화면 좌표를 다시 매핑하는 것입니다(이것도 가능한지 모르겠습니다). 화면의 일부에서 실행되는 중첩된 X 서버를 사용하여 이를 수행할 수 있습니다. 그러나 이것이 게임에 사용되는 경우 허용할 수 없는 성능 영향을 미칠 수 있습니다.
다중 헤드 모드(역사상 한 시점에서는 Zaphod 모드라고 불림)에서는 각 화면에 별도의 좌표계가 있으며 창을 화면 사이로 끌 수 없습니다. 예를 들어 X11 연결은 DISPLAY=:0으로 지정되고 DISPLAY=:0.0 또는 DISPLAY=:0.1로 화면을 지정할 수 있으며 응용 프로그램을 다른 화면으로 쉽게 강제할 수 있습니다. 현재 X 서버가 이 모드를 지원하는지 여부는 디스플레이 드라이버와 X 서버가 이를 지원하더라도 창 관리자가 지원하지 않을 수 있습니다.