Request to be able to use the numpad if numlock is on and only process fenrir commands if numlock is off. This should work, let me know if anything breaks.
This commit is contained in:
@ -23,11 +23,11 @@ class fenrirManager():
|
||||
raise RuntimeError('Cannot Initialize. Maybe the configfile is not available or not parseable')
|
||||
except RuntimeError:
|
||||
raise
|
||||
|
||||
|
||||
self.environment['runtime']['outputManager'].presentText(_("Start Fenrir"), soundIcon='ScreenReaderOn', interrupt=True)
|
||||
signal.signal(signal.SIGINT, self.captureSignal)
|
||||
signal.signal(signal.SIGTERM, self.captureSignal)
|
||||
|
||||
|
||||
self.isInitialized = True
|
||||
self.modifierInput = False
|
||||
self.singleKeyCommand = False
|
||||
@ -42,10 +42,10 @@ class fenrirManager():
|
||||
|
||||
def handleInput(self, event):
|
||||
self.environment['runtime']['debug'].writeDebugOut('DEBUG INPUT fenrirMan:' + str(event), debug.debugLevel.INFO)
|
||||
|
||||
|
||||
if not event['Data']:
|
||||
event['Data'] = self.environment['runtime']['inputManager'].getInputEvent()
|
||||
|
||||
|
||||
if event['Data']:
|
||||
event['Data']['EventName'] = self.environment['runtime']['inputManager'].convertEventName(event['Data']['EventName'])
|
||||
self.environment['runtime']['inputManager'].handleInputEvent(event['Data'])
|
||||
@ -54,7 +54,7 @@ class fenrirManager():
|
||||
|
||||
if self.environment['runtime']['inputManager'].noKeyPressed():
|
||||
self.environment['runtime']['inputManager'].clearLastDeepInput()
|
||||
|
||||
|
||||
if self.environment['runtime']['screenManager'].isSuspendingScreen():
|
||||
self.environment['runtime']['inputManager'].writeEventBuffer()
|
||||
else:
|
||||
@ -74,7 +74,7 @@ class fenrirManager():
|
||||
self.environment['runtime']['inputManager'].clearEventBuffer()
|
||||
else:
|
||||
self.environment['runtime']['inputManager'].writeEventBuffer()
|
||||
|
||||
|
||||
if self.environment['runtime']['inputManager'].noKeyPressed():
|
||||
self.modifierInput = False
|
||||
self.singleKeyCommand = False
|
||||
@ -83,7 +83,7 @@ class fenrirManager():
|
||||
|
||||
if self.environment['input']['keyForeward'] > 0:
|
||||
self.environment['input']['keyForeward'] -= 1
|
||||
|
||||
|
||||
self.environment['runtime']['commandManager'].executeDefaultTrigger('onKeyInput')
|
||||
|
||||
def handleByteInput(self, event):
|
||||
@ -124,14 +124,14 @@ class fenrirManager():
|
||||
|
||||
def handleScreenUpdate(self, event):
|
||||
self.environment['runtime']['screenManager'].handleScreenUpdate(event['Data'])
|
||||
|
||||
|
||||
if time.time() - self.environment['runtime']['inputManager'].getLastInputTime() >= 0.3:
|
||||
self.environment['runtime']['inputManager'].clearLastDeepInput()
|
||||
|
||||
|
||||
if (self.environment['runtime']['cursorManager'].isCursorVerticalMove() or
|
||||
self.environment['runtime']['cursorManager'].isCursorHorizontalMove()):
|
||||
self.environment['runtime']['commandManager'].executeDefaultTrigger('onCursorChange')
|
||||
|
||||
|
||||
self.environment['runtime']['commandManager'].executeDefaultTrigger('onScreenUpdate')
|
||||
self.environment['runtime']['inputManager'].clearLastDeepInput()
|
||||
|
||||
@ -150,17 +150,17 @@ class fenrirManager():
|
||||
def detectShortcutCommand(self):
|
||||
if self.environment['input']['keyForeward'] > 0:
|
||||
return
|
||||
|
||||
|
||||
if len(self.environment['input']['prevInput']) > len(self.environment['input']['currInput']):
|
||||
return
|
||||
|
||||
|
||||
if self.environment['runtime']['inputManager'].isKeyPress():
|
||||
self.modifierInput = self.environment['runtime']['inputManager'].currKeyIsModifier()
|
||||
else:
|
||||
if not self.environment['runtime']['inputManager'].noKeyPressed():
|
||||
if self.singleKeyCommand:
|
||||
self.singleKeyCommand = len(self.environment['input']['currInput']) == 1
|
||||
|
||||
|
||||
if not(self.singleKeyCommand and self.environment['runtime']['inputManager'].noKeyPressed()):
|
||||
currentShortcut = self.environment['runtime']['inputManager'].getCurrShortcut()
|
||||
self.command = self.environment['runtime']['inputManager'].getCommandForShortcut(currentShortcut)
|
||||
@ -220,7 +220,7 @@ class fenrirManager():
|
||||
self.environment['runtime']['outputManager'].presentText(_("Quit Fenrir"), soundIcon='ScreenReaderOff', interrupt=True)
|
||||
self.environment['runtime']['eventManager'].cleanEventQueue()
|
||||
time.sleep(0.6)
|
||||
|
||||
|
||||
for currentManager in self.environment['general']['managerList']:
|
||||
if self.environment['runtime'][currentManager]:
|
||||
self.environment['runtime'][currentManager].shutdown()
|
||||
|
Reference in New Issue
Block a user