# HG changeset patch # User drewp@bigasterisk.com # Date 2013-06-17 00:25:17 # Node ID b9aec3be2b8c69a20c9b261534a311c5ade42c6b # Parent 9c9b68302bf7a2cf7b98d858ea7f5aa0212ed88d hw sliders send events in a way that piles up and we get big delays. this is a simple throttle that stops the pileup but interactivity is still bumpy Ignore-this: a755c0611adee694bffc6fb08d3f767b diff --git a/bin/keyboardcomposer b/bin/keyboardcomposer --- a/bin/keyboardcomposer +++ b/bin/keyboardcomposer @@ -375,7 +375,14 @@ class KeyboardComposer(Frame, SubClient) subbox = self.slider_table[(self.current_row, col)] except KeyError: return # no slider assigned at that column - subbox.slider_var.set(value) + + if hasattr(self, 'pendingHwSet'): + import twisted.internet.error + try: + self.pendingHwSet.cancel() + except twisted.internet.error.AlreadyCalled: + pass + self.pendingHwSet = reactor.callLater(.01, subbox.slider_var.set, value) def send_to_hw(self, sub, hwCol, boxRow): if isinstance(self.sliders, DummySliders):