ボタン付きのワコムペンを持っています。ボタンを押したままペンを動かすときにスクロールをトリガーするにはどうすればよいですか?
以下のxev
によると、トリガーイベントはMotionNotify状態x2です。
これが簡単に行われない場合、私が持っているアイデアは、これらのイベントをどこかから読み取り、他のイベントに変換するサービスを構築することです。このようにして、ジェスチャーも定義できます。このアプローチでは:
MotionNotifyイベント、シリアル33、合成NO、ウィンドウ0xc00001、 ルート0x2ce、サブw 0x0、時間695630659、(349,181)、ルート:(1255,185)、 状態0x0 、is_hint 0、same_screen YES ButtonPressイベント、シリアル33、合成NO、ウィンドウ0xc00001、 root 0x2ce、subw 0x0、time 695630659、(349,181)、root:(1255 、185)、 状態0x0、ボタン2、same_screen YES MotionNotifyイベント、シリアル33、合成NO、ウィンドウ0xc00001、 ルート0x2ce、subw 0x0、時間695630667、(348,183)、ルート:(1254,187)、 状態0x200、is_hint 0、same_screen YES MotionNotifyイベント、シリアル33、合成NO、ウィンドウ0xc00001 root 0x2ce、subw 0x0、time 695630675、(347,184)、root:(1253,188)、 state 0x200、is_hint 0、same_screen YES 。 .. MotionNotifyイベント、シリアル33、合成NO、ウィンドウ0xc00001、 ルート0x2ce、サブw 0x0、時間695632069、(327,486)、ルート:(1233,490)、 状態0x2 00、is_hint 0、same_screen YES ButtonReleaseイベント、シリアル33、合成NO、ウィンドウ0xc00001、 ルート0x2ce、サブw 0x0、時間695632069、(327,486)、ルート:( 1233,490)、 状態0x200、ボタン2、same_screen YES
私はこの問題のはるかに単純な変形に遭遇しました:マウスの余分なキーをキーボード/マウスボタンの組み合わせに変換して、ウィンドウマネージャーでそれらをバインドしてウィンドウを移動/サイズ変更できるようにします。おそらく私のコードは出発点としてあなたを助けることができます:
https://Gist.github.com/CyberShadow/ae30a8d9f86c170c2451c3dd7edb649c
アイデアの要点は、マウスの/dev/input/...
デバイスからの入力イベントをキャプチャし、オプションでそれらを変更して、/dev/uinput
に書き戻すことです。