def debounce(func):
def debounced(self, *args, **kwargs):
flow_settings = find_flow_settings(
self.view.window().project_data()
)
debounce_ms = flow_settings.get('debounce_ms')
def call_func():
func(self, *args, **kwargs)
try:
debounced.timer.cancel()
except(AttributeError):
pass
debounced.timer = Timer(debounce_ms / 1000, call_func)
debounced.timer.start()
return debounced
评论列表
文章目录