talonvoice / beta

Issue tracker for the private Talon Beta
10 stars 0 forks source link

eye_zoom_mouse.enable()/disable() do not start eye tracking properly #98

Closed faithanalog closed 3 years ago

faithanalog commented 4 years ago

platform: Linux

affected methods:

eye_zoom_mouse.enable()
eye_zoom_mouse.disable()

problem:

these methods dont start eye tracking, so pop-zooms will always zoom in on the same spot every time.

cause/solution:

the cause is clear when we look at the definition of toggle_zoom_mouse() in resources/talon_plugins/eye_zoom_mouse.py:

def toggle_zoom_mouse(state):
    if state:
        zoom_mouse.enable()
    else:
        zoom_mouse.disable()
    sync_tracker()

toggle_zoom_mouse() calls sync_tracker(). using enable() and disable() directly does not. i was able to fix this by just moving the sync_tracker() call into both enable() and disable()

lunixbochs commented 3 years ago

This will be fixed in relation to talonvoice/talon#124 by adding official actions to toggle eye control modes.