私はキーバインディングを使用してターミネータをドロップダウンターミナルとして使用してきましたhide_window
。うまく動作しますが、1つの顕著な欠陥があります。終了者ウィンドウを非表示にするとフォーカスはありません。通常、私は終了キーを押してすぐに入力を開始します。そうすれば面白いことが起こります。ターミネーターにフォーカスを合わせるには?
- GNOMEシェル
- Arch Linux/Ubuntu 14.04(両方のシステムで同じ動作)
- 特定の時間に1つの出口ウィンドウのみが実行されます。
時々非表示 - 非表示 - 非表示解除をすばやく連続的に実行すると、ターミネータが焦点を当てますが、これは非常に面倒で、やや信頼できません。
答え1
このパッチを試してください。私はここにいるエラーレポート@スパークホーク提供してユーザーはそれがうまくいくと言います。このコマンドの使用方法がわかっているとしますpatch
。それは私にも効果があります。 (私は同じ問題を抱えています。)
包括的なパンフレットを見るにはここをクリックしてくださいpatch
。
=== modified file 'terminatorlib/window.py'
--- terminatorlib/window.py 2011-08-22 20:05:38 +0000
+++ terminatorlib/window.py 2012-03-30 21:02:28 +0000
@@ -273,6 +273,12 @@
if self.position:
self.move(self.position[0], self.position[1])
self.show()
+ self.grab_focus()
+ try:
+ t = gtk.gdk.x11_get_server_time(self.window)
+ except AttributeError:
+ t = 0
+ self.window.focus(t)
else:
self.position = self.get_position()
self.hidefunc()
ターミネータ1.90の場合、他の変更が行われる必要があるようです。 ~から同じバグレポートへのコメント#18:
307-311行を次のように変更しました。
try: from gi.repository import GdkX11 t = GdkX11.x11_get_server_time(self.get_window()) except AttributeError: t = 0 self.get_window().focus(t)