板 1- 前 次 新 レス
管理人の雑記
[72]管理人 ★:2007/10/10(水) 09:25:17
ThumbRemap修正
lukewarm.s101.xrea
Synapticsのモジュールの途中にサブルーチンのreturnが含まれていて初期化処理が正常に実行されなかったのを修正。
面倒なので、GoToで飛び越えさせた。
マウスボタンなどを割り当てたキーを押したままタッチパッドから指を離すと、割り当てたキーの押し上げイベントが乗っ取られず、ボタンが押されたままになってしまうことに気付いた。
とりあえず、割り当てを解除するとき、リマップしたキーを監視するタイマーをセットして、押されたままのキーは離されるまでリマップを解除しないようにした。
キーを押した状態でタッチパッドに触れたときは、キーリピートが働いているため、一瞬してから割り当てた動作が発生する。
この状態でも大して問題はない気がするが、タッチパッドに触れた瞬間に正しく発生するようにしたい。
割り当てを有効化する際にGetKeyStateで調べればいいような気がするが、何故か正しく動作しない。
1行ごとにGetKeyStateの結果をログ表示させてみたら、ホットキーをONにする前後で不自然に結果が変っていた。
Pモードではなく通常モードにしたら動作するようになったが、物理的な押し下げ状態を正しく検出できるはずのPモードが正しく動作しないのが忌々しい。
色々直したはずなのに、まだ何故か押されたままになってしまうことがある。
タッチパッドに触れる瞬間にリマップを割り当てたキーを押したときに誤動作しているようだ。
割り当て設定を減らして割り当て有効化処理が早く終るようにしたら発生しにくくなったので、割り込み優先度の問題でホットキーイベントがキャンセルされているのかと思ったが、右ボタンを割り当てた「L」キーを押しているのに、関係ないはずの左ボタンが押された状態になったりしているので、何か別の問題らしい。
面倒くさいので諦めることにした。
前 次