Talon stops responding to pops if you cause the file that registers the callback to be reloaded, eg. by editing it. For example:
noise.py
from talon import noise
def on_pop(active):
print("!!! POP !!!")
noise.register("pop", on_pop)
To reproduce: Make a file noise.py in the talon user directory as above. Start Talon. Verify that popping produces a line in the log. Now, edit noise.py in some irrelevant way, for example by inserting a line of white space. Now, verify that popping no longer prints a line in the log.
Note that calling noise.noise.dispatch("pop", True) from the repl will still call the callback and print a line to the log, so the problem does not appear to be that the callback is becoming unregistered.
Talon stops responding to pops if you cause the file that registers the callback to be reloaded, eg. by editing it. For example:
noise.py
To reproduce: Make a file noise.py in the talon user directory as above. Start Talon. Verify that popping produces a line in the log. Now, edit noise.py in some irrelevant way, for example by inserting a line of white space. Now, verify that popping no longer prints a line in the log.
Note that calling
noise.noise.dispatch("pop", True)from the repl will still call the callback and print a line to the log, so the problem does not appear to be that the callback is becoming unregistered.