現在 Unity テクニカル チームを率いるStephen Webb氏にタッチ入力について聞くことができました。彼はuTouch-geisパッケージの主任開発者であり、 Frame、Geis、およびGrailの3 つの異なるパッケージに分割されていたため、彼に連絡しました。これらは主要なタッチ スクリーン コントロールであり、彼は他のマルチタッチ プロジェクトにも深く関わっています。タッチ デバイスの入力と私のアイデアについて詳しく知りたいと彼に尋ねました。彼が言わなければならなかったことは次のとおりです。
私はGrub2にシングルタップイベントを登録させたいと思っています(マルチタッチは必要ありません-私は思います)。目的は、ブート メニューから選択することです。
ブート ローダー コードから作業を開始するのは難しいでしょう。
多くの (すべてではない) タッチ入力デバイスには、Microsoft HID プロトコルで動作するデバイス ドライバーがあります。そのドライバー テクノロジを GRUB2 に複製し、それを GRUB2 が入力として理解できるものにマップする方法を理解する必要があります。仕事のようですね。
タッチ デバイスの仕組みを理解するのに役立つリソースはありますか?
それは複雑です。さまざまな方法でホストに接続され、さまざまなプロトコルを話し、さまざまなデータを配信するさまざまなテクノロジがたくさんあります。
ここにいくつかの優れたドキュメントがあります。
提案できるシングルタップライブラリまたはマルチタッチライブラリはありますか? 前進する方法について他に提案はありますか?
Linux スタックには、カーネル内のデバイス ドライバーにデータを供給するタッチ プロセッサ内のファームウェアがあり、これが evdev プロトコルに変換され、x.org ドライバーによって読み取られて XI2 プロトコルに変換されます。 XI2 タッチ イベントを探す必要はなく、それを XI マウス イベントに変換すると、X11 イベントがクライアントに送信されます。ブート ローダー レベルにあるのは、タッチ プロセッサからの直接入力だけです。
askubuntuでこの質問のバリエーションを尋ね、この回答もそこに投稿しました。