問題タブ [ewmh]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
x11 - 紛らわしい_NET_SUPPORTING_WM_CHECK
ウィンドウマネージャを ICCCM 仕様に準拠させようとしています。_NET_SUPPORTING_WM_CHECK アトムの理由を完全に理解しています。これにより、ウィンドウ マネージャーが実行されなくなったときに無効な情報が残らないことが保証されます。
私が理解していないのは、_NET_WM_NAME と _NET_SUPPORTING_WM_CHECK 自体以外に、サポート ウィンドウで _NET_NUMBER_OF_DESKTOPS のような他のアトムが期待されない理由です。
ウィンドウ マネージャーはデータを設定して上書きすることになっていますが、新しいウィンドウ マネージャーが準拠していない場合、これは誤解を招く可能性があります。
c++ - xlibを使用してトップレベルのX11ウィンドウを識別する方法は?
X11 セッションですべてのトップ レベルのデスクトップ ウィンドウのリストを取得しようとしています。基本的に、ウィンドウ マネージャーのアプリケーション切り替え UI (通常、ユーザーが ALT + TAB を押すと開く) に表示されるすべてのウィンドウのリストを取得したいと考えています。
これまで X11 プログラミングを行ったことはありませんが、これまでのところ、次のようなコードを使用して、ウィンドウ リスト全体を列挙することができました。
enumerateWindows()
最初にルート ウィンドウで呼び出されます。
これは、何百ものウィンドウに関する情報を出力する限り、機能します。私が必要としているのは、特定Window
のウィンドウがトップレベルのデスクトップ アプリケーション ウィンドウであるかどうかを判断するために、どのプロパティを調べることができるかを調べることです (公式の用語が何であるかはわかりません)。 )、 か否か。
誰でもこれに光を当てることができますか?私が見つけた X11 プログラミングのリファレンス ドキュメントはすべて、ひどく無味乾燥で理解しにくいものでした。おそらく、誰かがより良いリソースを指し示すことができますか?
python - GTK でのウィンドウのオーバーラップの防止
GTK ウィンドウに必要な情報を表示する Python/Linux アプリケーションがあります。この説明では、ドックとまったく同じように動作する必要があります。すべての仮想デスクトップに存在し、最大化されたウィンドウがドックに重なることはありません。
最初のポイントは非常に簡単ですが、オーバーラップを防ぐために 2 番目のポイントを取得しようとして、モニターに頭を打ち付けるのに何日も費やしました。別のウィンドウが最大化されている場合、私のアプリはカバーされるべきではありません。他のウィンドウは、端で停止するのではなく、情報バーの後ろに座っているだけなので、「常に一番上」に設定するだけでは不十分です。
要するに、ドック/パネル スタイルのウィンドウで、他のウィンドウがその上/下で最大化するのをどのように防ぐことができますか?
更新: vsemenov のおかげで問題が解決しました
java - Java のワークスペース別名デスクトップ
私のアプリケーションがどのデスクトップ/ワークスペース上にあるかを発見および/または設定することに進歩はありましたか (もちろん Linux/Solaris の下で)?
linux - EWMH/NetWM 関数にアクセスするために使用するライブラリとヘッダーはありますか?
現在のウィンドウと仮想デスクトップについて、コマンドライン アプリで提供される情報と同様の情報を取得する必要がありますwmctrl
。使用できる (C/C++) API ヘッダーと lib ファイルはありますか?
gnome - Gnome でタイトルバーを削除する
タイトルバーを削除したいGnomeのウィンドウがあります。これは FVWM2 では簡単でした。ウィンドウ スタイルを include に設定しただけNoTitle
です。Gnome には、同様のオプションはないようです。
私は最近wmctrl
、EWMH 準拠のウィンドウ オプションを変更する方法を学びましたが、タイトルバーを削除する方法もありません (私が見ることができます)。
ただし、Audacious などのアプリケーションは Gnome にウィンドウの装飾を表示しないように指示できるため、何らかの方法でこれを行う必要があります。
グーグルで、タイトルバーを削除する問題について議論しているページをいくつか見つけましwmctrl
たが、いずれの場合fullscreen
も、タイトルバーが画面から完全に移動するように、ウィンドウに解決策がありました。(それは私が探しているものではありません!)
助けてくれてありがとう。
fullscreen - xcb で _NET_WM_STATE_FULLSCREEN ヒントを提供するにはどうすればよいですか?
私は自分の教育のために xcb でフルスクリーン アプリケーションを作成しようとしていますが、上記で問題が発生しています。Xlib を使用してこれを行うコードをいくつか見つけましたが、xcb を使用するコードはありません。構造を見つけたので、xcb_ewmh_connection_t
暫定的に次のように使用しています。
そして、構造内の原子をEWMH._NET_WM_STATE
などで使用します。
このちょっとした背景を踏まえて、ウィンドウをフルスクリーンにする必要があることをウィンドウ マネージャーにほのめかすにはどうすればよいでしょうか。
python - _NET_WM_STRUT_PARTIAL プロパティを変更できません
Python で作成した Gtk アプリケーション用に、画面にスペースを確保したいと考えています。私はこの関数を書きました:
呼び出しは次のようになります。
残念ながら、うまくいきません。コードのどこにエラーがありますか?
UPD: これが私の xprop 出力です。私の WM は Compiz です。
linux - ウィンドウがフローティングかタイルかを知る標準的な方法はありますか?
フローティング ウィンドウまたは最小化されたウィンドウのみを表示するようにタスク バーを変更しています。ICCCMとEWMHの標準があることは知っています。それらを使用して、ウィンドウがフローティングかタイルかを確認できますか? または、他に使用できるものはありますか?
別のウィンドウマネージャーに切り替えようとしているので、ウィンドウマネージャー専用にはしたくありません。
qt - Gtk skip_taskbar_hint (Glade-ui-Designer で表示) Qt で同等
Gtk-Ui をセットアップできる Glade Designer を使用すると、ウィンドウがタスクバーに表示されないようにするオプションを確認できます (Linux では、たとえば Ubuntu では左側のランチャーです)。Glade によって生成された ui ファイルを見ると、「<property name="skip_taskbar_hint">True</property>
しかしながら、このオプションは Gtk 固有のものではなく、これを PyQt4 アプリに適用したいと考えています。
現在、タスクバーのウィンドウを無効にできるのは、devilspie プログラム (EWMH 標準と通信する) でヒントを skip_tasklist に設定した場合のみです。これは私には多すぎます。
誰もそのようなオプションを知っていますか?