다른 응용 프로그램에서 포커스를 빼앗는 것을 방지할 수 있는 방법이 있습니까?

다른 응용 프로그램에서 포커스를 빼앗는 것을 방지할 수 있는 방법이 있습니까?

X가 아래 창을 열고 현재 포커스가 있는 창에서 포커스를 가져가면 짜증이 납니다. 이는 비밀번호 대화 상자에 비밀번호를 입력할 때 다른 앱이 포커스를 훔쳐서 일부 키 입력이 새 앱에서 끝나는 경우 특히 짜증납니다.

나는 항상 Windows에서 이 문제로 인해 짜증이 났지만 그곳에서는 그것에 대해 아무것도 할 수 없었으며, 이 문제는 Unix에서 해결될 수 있어야 한다고 생각하지 않을 수 없습니다.

저는 현재 데스크톱 환경(RHEL 5.8)으로 Gnome을 사용하고 있으며, 현재 창 관리자로 wmctrl -mGnome을 사용하고 있습니다 . Metacity이러한 기본 옵션을 계속 사용하고 싶지만 창 관리자에 대해 배우고 싶습니다.아니요이런 행동을 보여줍니다.

답변1

FWIW, xterm마우스 왼쪽 버튼을 클릭하면 Ctrl선택할 수 있는 메뉴가 나타납니다.보안 키보드. 그것은 사용한다XGrab 키보드키보드를 독점적으로 사용하세요.

예를 들어 다음과 같이 키에 바인딩할 수도 있습니다.

xterm -xrm 'XTerm.VT100.translations: #override Shift <KeyPress> F2: secure()'

을 위한 Shift-F2. 명령줄보다는 리소스 파일( xtermlike를 통해 로드 ~/.Xdefaults하거나 X 서버에 저장하고 xterm으로 쿼리) 에 넣는 것이 더 좋습니다 .xrdb

답변2

그놈에서 어떤 창 관리자를 사용하고 있는지 말하지 않았습니다. 가장 일반적인 것은 metacity, compiz(최신 버전의 gnome에서는 gnome-shell)입니다. 물론 원하는 대로 사용할 수 있습니다(일부는 다른 것보다 gnome과 더 잘 통합되지만).

Openbox의 경우 구성 파일( ~/.config/openbox/rc.xml에서 복사할 수 있는 파일 과 유사 /etc/xdg/openbox/rc.xml)을 다음으로 변경합니다.

<focus>
  <focusNew>no</focusNew>
  <!-- always try to focus new windows when they appear. other rules do
       apply -->

관련 정보