Ubuntu 10.10ボックスでvnc4serverを実行しており、TightVNC Viewer1.3.9を使用してUbuntu8.04マシンから接続しています。文字で何も入力できません d VNCセッション内で、 d すべてのウィンドウが最小化されます。
多くのオンラインフォーラムで成功した解決策の報告を受けて、すべてのウィンドウを非表示にするためのキーボードショートカットを無効にしましたが、問題は解決しません。
xev
の出力を以下に示します。それはの2つのプレスが含まれています d 最初のプレスですべてのウィンドウが最小化されたためです。何を保持し、何を削除するかわからなかったため、この出力には、最初のキー押下から2回目のキー押下でウィンドウが戻ったときまでのすべてが含まれています。
FocusOut event, serial 29, synthetic NO, window 0xa00001,
mode NotifyGrab, detail NotifyAncestor
FocusOut event, serial 29, synthetic NO, window 0xa00001,
mode NotifyWhileGrabbed, detail NotifyNonlinear
FocusIn event, serial 29, synthetic NO, window 0xa00001,
mode NotifyWhileGrabbed, detail NotifyPointer
KeymapNotify event, serial 29, synthetic NO, window 0x0,
keys: 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
LeaveNotify event, serial 29, synthetic NO, window 0xa00001,
root 0x2e, subw 0x0, time 581275388, (100,64), root:(111,572),
mode NotifyNormal, detail NotifyAncestor, same_screen YES,
focus YES, state 0
UnmapNotify event, serial 29, synthetic NO, window 0xa00001,
event 0xa00001, window 0xa00001, from_configure NO
PropertyNotify event, serial 29, synthetic NO, window 0xa00001,
atom 0xc7 (WM_STATE), time 581275388, state PropertyNewValue
PropertyNotify event, serial 29, synthetic NO, window 0xa00001,
atom 0xae (_NET_WM_STATE), time 581275388, state PropertyNewValue
MapNotify event, serial 29, synthetic NO, window 0xa00001,
event 0xa00001, window 0xa00001, override NO
VisibilityNotify event, serial 29, synthetic NO, window 0xa00001,
state VisibilityUnobscured
Expose event, serial 29, synthetic NO, window 0xa00001,
(0,0), width 178, height 10, count 3
Expose event, serial 29, synthetic NO, window 0xa00001,
(0,10), width 10, height 58, count 2
Expose event, serial 29, synthetic NO, window 0xa00001,
(68,10), width 110, height 58, count 1
Expose event, serial 29, synthetic NO, window 0xa00001,
(0,68), width 178, height 110, count 0
EnterNotify event, serial 29, synthetic NO, window 0xa00001,
root 0x2e, subw 0x0, time 581276874, (100,64), root:(111,572),
mode NotifyNormal, detail NotifyAncestor, same_screen YES,
focus NO, state 0
KeymapNotify event, serial 29, synthetic NO, window 0x0,
keys: 4294967283 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
PropertyNotify event, serial 29, synthetic NO, window 0xa00001,
atom 0xc7 (WM_STATE), time 581276874, state PropertyNewValue
PropertyNotify event, serial 29, synthetic NO, window 0xa00001,
atom 0xae (_NET_WM_STATE), time 581276874, state PropertyNewValue
FocusIn event, serial 29, synthetic NO, window 0xa00001,
mode NotifyWhileGrabbed, detail NotifyNonlinear
KeymapNotify event, serial 29, synthetic NO, window 0x0,
keys: 68 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
FocusOut event, serial 29, synthetic NO, window 0xa00001,
mode NotifyUngrab, detail NotifyPointer
FocusIn event, serial 29, synthetic NO, window 0xa00001,
mode NotifyUngrab, detail NotifyAncestor
KeymapNotify event, serial 29, synthetic NO, window 0x0,
keys: 4294967214 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
これで問題は解決しました。実際にはユーザーごとであるのに、キーバインディングはグローバルであるという愚かな仮定をしていました。 rootとしてログインしているキーバインディングを変更しましたが、別のユーザーが作成したVNCセッションにログインしていました。 「通常のウィンドウをすべて非表示にする…」ショートカットがに設定されました Mod4+D このユーザーのために。標準ソリューション-それを他の何かに変更する Ctrl+Alt+D-問題を修正しました。
また、VNCセッションのメタシティの代わりにopenboxをウィンドウマネージャーとして使用することもできます。
Metacityショートカットは機能せず、 Mod4+D 何も壊しません。
だから私は5つの異なるスタック交換サイトで同じ質問がされているのを見ました、そしてすべての答えはただホットキーを取り除くことを言います、それは機能します、しかし問題の根本ではありません(少なくともそれは私にとってではありませんでした)。ここで説明するように、実際の問題は、windowsスーパーキーが正しくマップされていないことです。
i3はVNCセッション中にmod4(Windowsキー)を無視します
基本的には、これら2つのコマンドを実行するだけです
xmodmap -e "clear mod4"
xmodmap -e "add Mod4 = Super_L"
それはそれをする必要があります。これで、デスクトップは、スーパー(Windows)キーも押した場合にのみ表示されます。 「d」キー(およびスーパーショートカットを備えた他のキー)は、期待どおりに機能するはずです。
キーボードによっては、Super_Lを別のものに置き換える必要がある場合があります。詳細については、上のリンクを確認してください。