ボタン付きワコムペンがあります。ボタンを押してペンを動かすとスクロールをトリガーするには?
によると、xev
次のトリガーイベントは次のとおりです。スポーツ通知状態とともに0x200。
これが些細なものではない場合、私が持っているアイデアの1つは、これらのイベントをどこかで読んで別のイベントに変換するサービスを構築することです。このようにジェスチャーを定義することもできます。このように:
- どこで読むことができますか?
- イベントに返信するにはどうすればよいですか?
- ジェスチャーを検出するライブラリはありますか?
MotionNotifyイベント、シーケンス番号33、合成NO、ウィンドウ0xc00001、 ルート 0x2ce, subw 0x0, 時間 695630659, (349,181), ルート: (1255,185), ステータス0x0、is_hint 0、same_screen YES ButtonPressイベント、シーケンス番号33、合成番号、ウィンドウ0xc00001、 ルート 0x2ce, subw 0x0, 時間 695630659, (349,181), ルート: (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、 ルート 0x2ce, subw 0x0, 時間 695630675, (347,184), ルート: (1253,188), ステータス0x200、is_hint 0、same_screen YES ... MotionNotifyイベント、シーケンス番号33、合成NO、ウィンドウ0xc00001、 ルート 0x2ce, subw 0x0, 時間 695632069, (327,486), ルート: (1233,490), ステータス0x200、is_hint 0、same_screen YES ButtonReleaseイベント、シーケンス番号33、合成NO、ウィンドウ0xc00001、 ルート 0x2ce, subw 0x0, 時間 695632069, (327,486), ルート: (1233,490), ステータス0x200、ボタン2、same_screen YES
答え1
私はこの問題のより簡単な変形を見つけました。マウスの追加キーをキーボード/マウスボタンの組み合わせに変換し、ウィンドウマネージャでバインドしてウィンドウを移動/サイズ調整できるようにしました。たぶん私のコードはあなたの出発点になるかもしれません。
https://gist.github.com/CyberShadow/ae30a8d9f86c170c2451c3dd7edb649c
アイデアのポイントは、マウス/dev/input/...
デバイスから入力イベントをキャプチャし、オプションで変更してから再記録することです/dev/uinput
。