dansav / vs-eye-tracking

Extension for Visual Studio using eye tracking
MIT License
5 stars 4 forks source link

An options page would be wonderful #6

Closed niklaskallander closed 5 years ago

niklaskallander commented 5 years ago

I love the potential this extension has, great work (:

Any plans on providing an options page to set keys, delays, scroll velocity, etc?

Thanks!

dansav commented 5 years ago

Hi, thanks for your suggestions. Yes there are plans to provide an UI for managing different parameters. I will add more data to the road map as a reminder. https://github.com/dansav/vs-eye-tracking/blob/develop/CHANGELOG.md

dansav commented 5 years ago

I just made a new release with a rough version of an options page. For now all values have to be typed. In a future update I want to have a custom UI with maybe sliders to adjust the delays/timeouts. Let me know what you think!

niklaskallander commented 5 years ago

@dansav nice, thanks!

I can't find the option to set scroll velocity/speed though? Still seems to be hardcoded: https://github.com/dansav/vs-eye-tracking/blob/7f5b62535c1757173814885bc3877fc70d9ccacb/source/EyeTrackingVsix/Features/Scroll/GazeScroll.cs#L73

And unfortunately the "Key hold time (ms)" setting doesn't seem to work as intended. Tried turning it down to 400, scroll feature stops working, turning back up to 550, it starts working again. Increasing it seems to work fine though.

dansav commented 5 years ago

You're right. I missed the scroll velocity. I will fix that.

Regarding the key hold time; I don't remember exactly, but I think it is because I only rely on the WPF events PreviewKeyDown/Up and the fact that the repeated events don't start until after a certain period (I think I just increased the time until it worked). To handle shorter hold times, there has to be some kind of custom repeated polling of key state. If you know a better way, I am open to suggestions.

niklaskallander commented 5 years ago

It seems the preview events are triggered every 30-40 ms or thereabouts, so that shouldn't be an issue. I suspect there might be a minor race condition between the sequences for start and stop.

I like what you're doing with the velocity providers, looking forward to trying them out! (:

dansav commented 5 years ago

I just made a new release, with scroll speed in the options page together with some new experimental stuff related to different types of scroll. The different velocity providers are just quickly thrown together, I just wanted to get the basic functionality in there.