ykon/w10wheel.net

I want to modify the threshold of the drag trigger.

Opened this issue · 5 comments

ドラッグトリガーのしきい値を修正したいです。

現在、私はThinkPad Windows10でこのソフトウェアを利用しています。
トリガーとして**ボタンドラッグを設定しています。

私のトラックポイントは微小ですがドリフトを起こす時があり、そのときにミドルクリックではなくミドルドラッグとして判定されてスクロールモードになります。

設定パラメータとして微小な移動はドラッグとして認識しないように閾値を設定できたら嬉しいと思います。
すでにスクロールの閾値が編集できることは知っていますが、それはトリガーが発生したあとの設定のように思います。
私は、微小なドラッグが発生していてもミドルクリック信号を送信したいです。

以下は機械翻訳です

Machine Translation
I would like to modify the drag trigger threshold.

I am currently using this software on a ThinkPad Windows 10.
I have set the middle button drag as a trigger.

My track point sometimes drifts slightly, causing it to be judged as a middle drag instead of a middle click, and it goes into scroll mode.

It would be wonderful if I could set a threshold as a configuration parameter so that small movements are not recognized as a drag.
I know that I can already edit the scrolling threshold, but I think it affects the state after the trigger occurs, but not the judgment of whether it is a middle drag or middle click.
I would like to send a middle click signal even if a tiny drag is occurring.

ykon commented

ありがとうございます。こちらは日本語のみでも大丈夫です。
とりあえず、要望の内容としては理解できました。
土曜か日曜に時間が取れたら、詳細に検討したいと思います。

※ 以下、コードレベルの話です。# 少ししか見ていないので間違っているかも
現在の*Dragの仕様ですが、常にボタンを押した時点でスクロールモードに切り替えて、
移動が発生したら、後からアイコンだけ変えるという作りになっています。
# ボタンを離すとスクロールモードの解除 + 移動が発生していなかったらクリックを再送信
変更としては、startScrollDrag()で最初の位置を覚えておいて、
dragStart()で閾値を超えた移動値の場合にdraggedをtrueにするのと、
dragがdragStart()のままになった場合のdragDefault()に戻す処理をどこかに入れると
上手くいくかもしれません。# これで何か別の副作用がなければ

ykon commented

d4de520

dragThreshold: 0~500

ちょっとテストは足りていませんが大丈夫そうです。
想定と動作があっているかご確認ください。
※ まだUIはありません。設定ファイルを直接変更してください。
W10Wheel_dragThreshold.zip

昨日から検証しようとしているのですが、どうにもexeファイルが起動しないです…
自動起動を切って再起動したあとに管理者権限で起動しようとしたところ砂時計が数秒現れるものの何も起動しないようです。

エラー等がでるわけでもなくタスクトレイにでるわけでもなく、TaskManagerのプロセス一覧にもW10から始まるプロセスはない症状です。
# おそらくWindowsのセキュリティでブロックされているようです。

通常の起動も管理者権限での起動もうまく行かない状態で動作確認ができません…
Releaseにあるv2.7.3は起動できるので署名等を入れたビルドファイルをいただけばありがたいです。

関係ないと思いますが、WindowsUpdateは最新に更新してあります。

ykon commented

このファイルは単体では起動しません。
FSharp.Core.dllへの依存関係があるので、現在のW10Wheel.exeを何かにリネームして (W10Wheel.exe.2.7.3)
そのディレクトリに新しいW10Wheel.exeを配置します。
これで恐らく起動するかと思います。

I want to report this works well and small jitters no longer prevent middle click from being sent. Thank you!