Openboxに条件付きで仮想デスクトップを追加する

Openboxに条件付きで仮想デスクトップを追加する

アクティブウィンドウを最初のデスクトップの左側に移動するときに、Openboxに新しいデスクトップを追加することを試みます。別のデスクトップでウィンドウを移動した場合は、ウィンドウのみを移動する必要があります。

私が使用する設定は次のとおりです。

<keybind key="S-W-A-Left">
  <action name="if">
    <query>
      <desktop>0</desktop>
    </query>
    <then>
      <action name="AddDesktop">
        <where>current</where>
      </action>
    </then>
  </action>
  <action name="SendToDesktopLeft">
    <dialog>no</dialog>
    <wrap>no</wrap>
  </action>
</keybind>

移動ウィンドウは期待どおりに動作します。問題は、If句が常に成功しているように見えることです。 Openbox は、アクティブなウィンドウがどのデスクトップから起動されたかに関係なく、新しいデスクトップを追加します。

私が逃したものは何ですか! ?

答え1

最初のデスクトップの番号は1です。これが<desktop>1</desktop>まさにあなたが望むものです。<desktop>0</desktop>おそらく、すべてのデスクトップと一致する必要があります。

あなたもデスクトップに送信部分オープンボックス Wiki、どのオプションも言及せず、<dialog>実際にOSDが表示されるのを防ぐために使用できるものは何も言及しません。

関連情報