自動的にカーソルを拡大化する、X プログラムを書くことは可能でしょうか?
XTEST 拡張から、XTestCompareCursor を使うのです。 どのウインドウに対して、マウスポインタは"既知の"カーソルセット (例えばカーソルフォント)とそのウインドウのカーソルの比較に入ります。 もしカーソルが見つかれば、それを拡大化したものに置き換え、見つからなければ そのままにするか、普通のカーソルに置き換えます。この方法は XTest 拡張の 有効なもののみで実現されます。
XCreate*Cursor
Xlib 関数に対するすべての要求を中断し、
その他の要求は変えずに本来の X サーバに中継する代理 X サーバを書くことです。
そこで、XCreate*Cursor
の要求が拡大化されたカーソルを使うように
変更させるのです。
この代理サーバは、例えば:1
. のような新しいディスプレイをつくり出します。
このディスプレイに接続するすべてのクライアント、例えば xterm -display :1
は本来のサーバ、通常 :0
、に表示され、そのマウスカーソルが自動的に
拡大されるのです。しかし、:0
に接続したクライアントのマウスカーソルは
変わらないのです。