GNOMEでクライアント側の装飾をグローバルに無効にするにはどうすればよいですか?


16

Ubuntu GNOME 17.04を使用しています。ほとんどの公式GNOMEアプリケーション(Nautilus、gedit、Evinceなど)はGtkHeaderBars(タイトルバーとツールバーの組み合わせ、リンクされたスクリーンショットを参照)を使用しますが、他のアプリケーションは使用しないため、クライアントサイドデコレーション(CSD)に遭遇します。この機能はUnityでは無効になっています。すべてのアプリケーションは従来の個別のタイトルバーを使用します。

スクリーンショット(この記事から):

  • GtkHeaderBarを使用したNautilus

  • GtkHeaderBarを使用しないNautilus

一貫性を保つために、GtkHeaderBarsをグローバルに(それを使用するすべてのアプリケーションで)無効にして、個別のタイトルバーを使用します。それを達成する方法はありますか?

gtk3-nocsdパッケージについて聞いたことがありますが、すべてのアプリケーションでGNOMEで動作させることができませんでした。

回答:


15

アプリケーションの開発者がこのような機能を引き受けていない限り、これはできないと思います。ウィンドウの上部にタイトルバーを表示しても、CDSが実際に無効になっているわけではありません。タイトルバー、メニューバー、ツールバー、ステータスバーなどの従来のウィンドウレイアウトがまだありません。

Client Side Decorationsは、Linuxユーザーインターフェイス破壊し、アプリやデスクトップ環境を見た目が悪く、ネイティブではないようにしました。

すべての開発者がGnomeのガイドラインを無視し、すべての環境でアプリケーションの有用性と一貫性を保つことを願っています。


8

私はヴァシリスにCSDは恐ろしいことに同意しますが、幸いなことに、彼はそれらを無効にする可能性について間違っています。

Ubuntuで、gtk3-nocsdパッケージをインストールしてからログアウトし、再度ログインします。

この「ハック」により、GTK +アプリケーションはウィンドウマネージャーのウィンドウ装飾を無効にしなくなります。結果は少し奇妙に見えるかもしれません-GNOMEの電卓アプリケーションが標準CSDでどのように見えるかを以下に示します。

ここに画像の説明を入力してください

そして、NOCSDハックで:

ここに画像の説明を入力してください

CSDはLinuxユーザーインターフェイス破壊した恐ろしいアイデアであるというVassilisの主張が正しい理由のいくつかの例を見ることができます。

  1. 非CSDウィンドウタイトルには「<2>」が表示されます。スクリーンショットを撮るために同時に2つの計算機ウィンドウを実行したためです。CSDのタイトルも「Calculator」ですが、表示されません。 managerにはウィンドウリストUI(「タスクバー」など)があり、そこに「Calculator」がリストされているのがわかりますが、画面上で簡単に見つけることはできません。
  2. 私のウィンドウマネージャーでは "ドロップシャドウ"が有効になっているため、他のウィンドウよりも上にあるウィンドウを簡単に確認できますが、CSDウィンドウはそれを無効にします。理由はありません。
  3. 「常に手前に」機能を頻繁に使用するため、ウィンドウマネージャーに便利なボタンを表示して他のウィンドウ操作ボタンの近くで有効にするように依頼しましたが、CSDアプリは明らかにそれを認識せず、見せないで 「現在のワークスペースにピン留めする」ボタンと同じ問題がありますが、デフォルトの構成にあり、GTK +がそれを知っているはずなので、ここではエラーがより目立ちます。
  4. 表示されていないのは(怠け者だったため)ウィンドウ操作メニュー(タイトルを右クリック)で、CSDウィンドウには非常に限られたオプションセットがあります(基本的に6つの標準操作と「常に上」)ウィンドウマネージャーは、私がよく使用する多くの機能を提供します)。
  5. 表示されていないもう1つのことは、CSDウィンドウは、他のすべてのウィンドウとは異なり、アクティブでないときにそのタイトルの色を変更しないことです。KDEがそんなにすばらしいデスクトップ環境ではなく、正しいタイトルカラーを使用するようにGTK +アプリケーションを設定した場合、これはより明白なエラーになります-他のDEでは、アクティブなGTK + CSDタイトルカラーはアクティブな「ネイティブ」ウィンドウとさえ一致しませんタイトルの色。

1
質問から:「gtk3-nocsdパッケージについて聞いたことがありますが、すべてのアプリケーションでGNOMEで動作させることができませんでした。」
ムル

うーん...それを見逃した、ごめんなさい。@pomsky:どのような問題がありましたgtk3-nocsdか?
グス

たとえば、前回試したときに、ノーチラスでは動作しませんでした。
ポンスキー

Kubuntu 17.10では正常に動作します。NautilusがUnityセッションでいつロードされるかはgtk3-nocsdわかりませんが、XSessionスクリプトの前に発生する場合は、それが原因である可能性があります。それでもうまくいかない場合は、pingを実行してください。
グス

4

evince次のように、Ubuntu 18.04でウィンドウマネージャー(Openbox)が提供する装飾を使用してPDFビューアーを実行できました。

$ sudo apt-get install gtk3-nocsd
$ gtk3-nocsd evince

gtk3-nocsdは、Evinceを含むすべてのgtkアプリの設定なしで、非GNOMEデスクトップのヘッダーバーを自動的に無効にするようです。webupd8.org/2014/08/how-to-disable-gtk3-client-side.html-user47206
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.