def run(self): events = XEvents() events.start() while not events.listening(): # Wait for init time.sleep(1) try: while events.listening(): evt = events.next_event() if not evt: time.sleep(0.5) continue if evt.type != "EV_MOV" and # Only track key movement or (evt.type != "EV_KEY" or evt.value != 1): # Only count key down, not up. continue if evt.type == "EV_MOV": self.thishour_distance += distance(evt.value, self.lastmove) self.lastmove = evt.value if evt.type == "EV_KEY": self.thishour_count+=1 if time.time() > self.nextsave: self.save() if datetime.now().hour != self.thishour.hour: self.set_thishour() except KeyboardInterrupt: events.stop_listening() self.save()
def run(self): events = XEvents() events.start() while not events.listening(): # Wait for init time.sleep(1) try: while events.listening(): evt = events.next_event() if not evt: time.sleep(0.5) continue if evt.type != "EV_KEY" or evt.value != 1: # Only count key down, not up. continue self.thishour_count += 1 if time.time() > self.nextsave: self.save() except KeyboardInterrupt: events.stop_listening() self.save() except: print "Caught exception, probably not connected to the interwebs..."
def run(self): self.events = XEvents() event_ready = threading.Event() self.events.set_event(event_ready) self.events.start() while not self.events.listening(): # Wait for init time.sleep(1) try: while True: self.event_handler() event_ready.clear() event_ready.wait() except KeyboardInterrupt: self.events.stop_listening() self.save()
def run(self): events = XEvents() events.start() lastkeyat = time.time() while not events.listening(): # Wait for init time.sleep(1) try: while events.listening(): evt = events.next_event() if time.time() - lastkeyat > 0.75 and self.muted: self.togglemute() self.muted = False if not evt: time.sleep(0.5) continue if evt.type != "EV_KEY" or evt.value != 1: # Only count key down, not up. continue if not self.muted and not "BTN_" in evt.code: self.togglemute() self.muted = True lastkeyat = time.time() self.thishour_count+=1 if time.time() > self.nextsave: self.save() if datetime.now().hour != self.thishour.hour: self.set_thishour() except KeyboardInterrupt: events.stop_listening() self.save()