私の好みに合わせてカスタマイズされた Linux 画面拡大鏡を書きたいと思います。理想的には、拡大ウィンドウは幅約 150 ピクセルの正方形で、マウス カーソルが移動しても追従します。
X11でこれを行うことは可能ですか? マウスの動きに追従するアプリケーション ウィンドウを作成する方が簡単でしょうか?それとも、ウィンドウのことを完全に忘れて、マウス ポインターを下にあるものを拡大する 150x150 の正方形にした方がよい (または可能である) でしょうか?
xeyesのソースを見てください。
これは実際にはすでに存在し、Xmagと呼ばれます(追加情報をGoogleで検索してください)。それがどのように機能するかを知りたい場合は、そのソースコードをチェックすることをお勧めします。
編集:私はあなたの質問を少し読み間違えたようです...拡大された正方形がマウスポインタの周りをたどりたいのであれば、それは可能であるはずですが、あなたがそれをどのように行うかについての技術的な詳細はわかりません。とにかく、出発点はおそらくXmagを出発点として見ることです。
これが独自のアプリとして実行できるのか、それともウィンドウ マネージャーに統合する必要があるのかはわかりません。いずれにせよ、libx11 が必要になります (ディストリビューションごとに名前が異なる場合があります)。また、swarpをご覧になることをお勧めします。これはあなたが話していることとはかけ離れていますが、ソース コードはわずか 35 行であり、libx11 で何ができるかを示しています。
個人的には、真ん中に 1px の穴が常にあるフレームレス ウィンドウを作成します。ユーザーが行うイベント (マウス クリック、キー押下など) は、下のウィンドウに渡されます。
ユーザーがカーソルを移動すると、ウィンドウに表示され、少し移動するだけです。拡大部分については、まあ - それは読者への演習として残されています (私はまだそれを行う方法がわからないので ;-)。