Skip to content

Commit c972f8e

Browse files
committed
Fix a bug where clicking on the arrow keys instead of numpad, to stop/next, pause or rewind, was allowed.
1 parent 7d57e0d commit c972f8e

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

Python AT Audio Player/Python_AT_Audio_Player.py

+8-4
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
class PressedCharacter:
3636
def __init__(self):
3737
self.char = None
38+
self.globalChar = keyboard.KeyboardEvent(None, None)
3839
pressedCharacter = PressedCharacter()
3940
class PlaylistData:
4041
def __init__(self):
@@ -189,22 +190,25 @@ def saveFiles():
189190
nowPlaying.logged = True
190191

191192
thread._start_new_thread(getChar, ())
193+
def setGlobalChar(event):
194+
pressedCharacter.globalChar = event
195+
keyboard.on_press(setGlobalChar)
192196
while shouldRun:
193197

194-
p_event = (pressedCharacter.char == "p") or ((keyboard.is_pressed(76)) and (keyboard.is_pressed("5"))) #Trigger on "p" inside console or "5" on numpad (globally)
195-
s_event = (pressedCharacter.char == "s") or ((keyboard.is_pressed(77)) and (keyboard.is_pressed("6"))) #Trigger on "s" inside console or "6" on numpad (globally)
198+
p_event = (pressedCharacter.char == "p") or ((keyboard.is_pressed(76)) and (pressedCharacter.globalChar.is_keypad)) #Trigger on "p" inside console or "5" on numpad (globally)
199+
s_event = (pressedCharacter.char == "s") or ((keyboard.is_pressed(77)) and (pressedCharacter.globalChar.is_keypad)) #Trigger on "s" inside console or "6" on numpad (globally)
196200
l_event = pressedCharacter.char == "l"
197201
i_event = pressedCharacter.char == "i"
198202
u_event = pressedCharacter.char == "u"
199-
r_event = (pressedCharacter.char == "r") or ((keyboard.is_pressed(75)) and (keyboard.is_pressed("4"))) #Trigger on "r" inside console or "4" on numpad (globally)
203+
r_event = (pressedCharacter.char == "r") or ((keyboard.is_pressed(75)) and (pressedCharacter.globalChar.is_keypad)) #Trigger on "r" inside console or "4" on numpad (globally)
200204
t_event = pressedCharacter.char == "t"
201205
g_event = pressedCharacter.char == "g"
202206
j_event = pressedCharacter.char == "j"
203207
n_event = pressedCharacter.char == "n"
204208
h_event = pressedCharacter.char == "h"
205209
c_event = pressedCharacter.char == "c"
206210
o_event = pressedCharacter.char == "o"
207-
e_event = (pressedCharacter.char == "e") or ((keyboard.is_pressed(79)) and (keyboard.is_pressed("1"))) #Trigger on "e" inside console or "1" on numpad (globally)
211+
e_event = (pressedCharacter.char == "e") or ((keyboard.is_pressed(79)) and (pressedCharacter.globalChar.is_keypad)) #Trigger on "e" inside console or "1" on numpad (globally)
208212
q_event = pressedCharacter.char == "q"
209213

210214
if p_event and pygame.mixer_music.get_busy():

0 commit comments

Comments
 (0)