Add backlog
This commit is contained in:
parent
8fe8bc3a0e
commit
e342e0d4dd
@ -12,6 +12,9 @@ if strings.HasPrefix(message_string, "{KEYDWN}") {
|
|||||||
} else if strings.HasPrefix(message_string, "{KEYUP}") {
|
} else if strings.HasPrefix(message_string, "{KEYUP}") {
|
||||||
key = strings.TrimPrefix(string(message_string), "{KEYUP}")
|
key = strings.TrimPrefix(string(message_string), "{KEYUP}")
|
||||||
k.Write(0, key)
|
k.Write(0, key)
|
||||||
|
} else if strings.HasPrefix(message_string, "{KEYHLD}") {
|
||||||
|
key = strings.TrimPrefix(string(message_string), "{KEYHLD}")
|
||||||
|
k.Write(2, key)
|
||||||
} else{
|
} else{
|
||||||
for _, key := range message_string {
|
for _, key := range message_string {
|
||||||
// write once will simulate keyboard press/release, for long press or release, lookup at Write
|
// write once will simulate keyboard press/release, for long press or release, lookup at Write
|
||||||
|
@ -70,14 +70,20 @@ print("Enter numbers, press enter (Ctrl-C to exit).")
|
|||||||
|
|
||||||
write_queue = queue.Queue()
|
write_queue = queue.Queue()
|
||||||
def write_loop():
|
def write_loop():
|
||||||
|
backlog = []
|
||||||
while True:
|
while True:
|
||||||
try:
|
try:
|
||||||
|
while backlog:
|
||||||
|
with open(fifo, "w") as f:
|
||||||
|
f.write(backlog.pop(0))
|
||||||
|
|
||||||
data = write_queue.get()
|
data = write_queue.get()
|
||||||
with open(fifo, "w") as f:
|
with open(fifo, "w") as f:
|
||||||
f.write(data)
|
f.write(data)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print("Error writing to fifo: " + str(e))
|
print("Error writing to fifo: " + str(e))
|
||||||
traceback.print_exc()
|
traceback.print_exc()
|
||||||
|
backlog
|
||||||
|
|
||||||
write_thread = threading.Thread(target=write_loop, daemon=True)
|
write_thread = threading.Thread(target=write_loop, daemon=True)
|
||||||
write_thread.start()
|
write_thread.start()
|
||||||
@ -231,7 +237,8 @@ try:
|
|||||||
for event in device.read_loop():
|
for event in device.read_loop():
|
||||||
|
|
||||||
if event.type == evdev.ecodes.EV_KEY:
|
if event.type == evdev.ecodes.EV_KEY:
|
||||||
print(event)
|
if event:
|
||||||
|
print(event)
|
||||||
#e_code = event.code - 1
|
#e_code = event.code - 1
|
||||||
e_code = event.code
|
e_code = event.code
|
||||||
|
|
||||||
@ -245,6 +252,8 @@ try:
|
|||||||
quit_if_necessry(log)
|
quit_if_necessry(log)
|
||||||
elif event.value == 0:
|
elif event.value == 0:
|
||||||
key_str = "{KEYUP}" + key_str
|
key_str = "{KEYUP}" + key_str
|
||||||
|
elif event.value == 2:
|
||||||
|
key_str = "{KEYHLD}" + key_str
|
||||||
else:
|
else:
|
||||||
print("Unknown value: " + str(event.value))
|
print("Unknown value: " + str(event.value))
|
||||||
continue
|
continue
|
||||||
|
Loading…
Reference in New Issue
Block a user