web-dev-qa-db-ja.com

フレームレスウィンドウを現在のアクティビティでのみ開くようにする

ChromeやFirefoxなどの一部のアプリケーションには、独自のドラッグ可能なタイトルバーがあり、システムの境界がなくても見栄えがよくなります。

FF&Chrome with plasma bordersFF&Chrome naked

ただし、これにはコストがかかるようです。アプリケーションを介してこの機能を有効にするか、プラズマ独自の(KWin)設定を使用するかに関係なく、次に開くウィンドウがすべてのアクティビティに表示されます。

Chrome's native title bar removerKWin must be used for firefox

これを無効にして、システム境界の使用に戻ると、新しいプログラムインスタンスが再びアクティビティに従います。

プログラムを開くアクティビティを選択する設定があることに気付きましたが、オプションは「すべてのアクティビティ」と[常に開く]アクティビティのリストのみです(「現在のアクティビティ」オプションはありません。デフォルトである必要があります。チェックされていない、設定..これは機能していません)。

enter image description here

それを動作させる方法はありますか?
現在のウィンドウを現在のアクティビティにトラップするキーボードショートカット(ウィンドウを別のデスクトップに移動するためのショートカットがあるのと同じように)?
または、プログラムを呼び出す小さなスクリプトで実行可能ファイルをエイリアスしますが、dbusなどを使用して手動でアクティビティに入れますか?

1
Hashbrown

さて、私は有効な回避策を持っています。現在のアクティビティを設定するショートカット(スクリプトなしでは不可能に見えます)の代わりに、Plasmaに境界線を追加するときと同じように処理させ、境界線を削除するショートカットを用意してみませんか?

  1. アプリ(この場合はChrome)で、通常どおり境界線なしで表示するように準備します;
    right click area next to tabs→チェックを外すUse system title bar and borders

    これにより、chromeが表示され、ボタンを閉じる、最小化、最大化することができます。

  2. この設定を無視するようにプラズマに指示します;
    Alt-F3アプリ内 (または、手順1の前に左上のアイコンをクリックします)More ActionsSpecial Window SettingsAppearance & FixesNo titlebar and frameApply InitiallyNoOkay

    これにより、プラズマは現在のアクティビティに対して新しいウィンドウをロックします。

  3. 手動で境界線を削除するショートカットを追加します;
    System SettingsShortcutsGlobal ShortcutsKWinHide Window BorderCustom (私は使用しました -

これで、chromeウィンドウを開くたびに、ヒットする必要があります - 境界線が消えて、開いたアクティビティに残ります。

1
Hashbrown