initial key handling
This commit is contained in:
parent
f7fa100173
commit
5ee9dca99e
@ -2,9 +2,10 @@
|
|||||||
|
|
||||||
runtime = {
|
runtime = {
|
||||||
'running':True,
|
'running':True,
|
||||||
|
'debug':None,
|
||||||
'columns': 0,
|
'columns': 0,
|
||||||
'lines': 0,
|
'lines': 0,
|
||||||
'screenDriver': '/dev/vcsa',
|
'screenDriver': None,
|
||||||
'delta': '',
|
'delta': '',
|
||||||
'oldCursor':{'x':0,'y':0},
|
'oldCursor':{'x':0,'y':0},
|
||||||
'oldContentBytes': b'',
|
'oldContentBytes': b'',
|
||||||
@ -22,6 +23,7 @@ runtime = {
|
|||||||
'screenDriver': None,
|
'screenDriver': None,
|
||||||
'soundDriverString': '',
|
'soundDriverString': '',
|
||||||
'soundDriver': None,
|
'soundDriver': None,
|
||||||
|
'inputManager': None
|
||||||
}
|
}
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
|
@ -1,9 +1,24 @@
|
|||||||
#!/bin/python
|
#!/bin/python
|
||||||
|
|
||||||
|
import evdev
|
||||||
|
from evdev import InputDevice
|
||||||
|
from select import select
|
||||||
|
|
||||||
class inputManager():
|
class inputManager():
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
pass
|
self.devices = map(evdev.InputDevice, (evdev.list_devices()))
|
||||||
|
self.devices = {dev.fd: dev for dev in self.devices}
|
||||||
|
for dev in self.devices.values(): print(dev)
|
||||||
|
|
||||||
def getCommandQueue(self, runtime):
|
def getShortcutCommand(self, runtime, shortcuts):
|
||||||
return[]
|
if not shortcuts:
|
||||||
|
return ''
|
||||||
|
return ''
|
||||||
|
|
||||||
|
def getKeyPressed(self, runtime):
|
||||||
|
r, w, x = select(self.devices, [], [])
|
||||||
|
for fd in r:
|
||||||
|
for event in self.devices[fd].read():
|
||||||
|
if event.type == evdev.ecodes.EV_KEY:
|
||||||
|
print(evdev.categorize(event))
|
||||||
|
|
||||||
|
@ -5,12 +5,16 @@
|
|||||||
|
|
||||||
import os, sys
|
import os, sys
|
||||||
|
|
||||||
|
DEBUG = False
|
||||||
|
|
||||||
if not os.getcwd() in sys.path:
|
if not os.getcwd() in sys.path:
|
||||||
sys.path.append(os.getcwd())
|
sys.path.append(os.getcwd())
|
||||||
|
|
||||||
|
|
||||||
from core import environment
|
from core import environment
|
||||||
|
from core import inputManager
|
||||||
from utils import debug
|
from utils import debug
|
||||||
|
|
||||||
from speech import espeak as es
|
from speech import espeak as es
|
||||||
from speech import speechd as sd
|
from speech import speechd as sd
|
||||||
from screen import linux as lx
|
from screen import linux as lx
|
||||||
@ -18,11 +22,15 @@ from screen import linux as lx
|
|||||||
class fenrir():
|
class fenrir():
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.runtime = environment.runtime
|
self.runtime = environment.runtime
|
||||||
|
self.runtime['inputManager'] = inputManager.inputManager()
|
||||||
|
if DEBUG:
|
||||||
|
self.runtime['debug'] = debug.debug()
|
||||||
self.settings = environment.settings
|
self.settings = environment.settings
|
||||||
self.bindings = {}
|
self.bindings = {}
|
||||||
self.autospeak = []
|
self.autospeak = []
|
||||||
self.soundIcons = {}
|
self.soundIcons = {}
|
||||||
|
|
||||||
|
# the following hard coded, in future we have a config loader
|
||||||
self.runtime['speechDriverString'] = 'speechd'
|
self.runtime['speechDriverString'] = 'speechd'
|
||||||
self.runtime['speechDriver'] = sd.speech()
|
self.runtime['speechDriver'] = sd.speech()
|
||||||
self.runtime['screenDriverString'] = 'linux'
|
self.runtime['screenDriverString'] = 'linux'
|
||||||
@ -31,6 +39,7 @@ class fenrir():
|
|||||||
def proceed(self):
|
def proceed(self):
|
||||||
while(self.runtime['running']):
|
while(self.runtime['running']):
|
||||||
self.runtime = self.runtime['screenDriver'].analyzeScreen(self.runtime)
|
self.runtime = self.runtime['screenDriver'].analyzeScreen(self.runtime)
|
||||||
|
self.runtime['inputManager'].getKeyPressed(self.runtime)
|
||||||
def shutdown(self):
|
def shutdown(self):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
|
|
||||||
# Debugger module for the Fenrir screen reader.
|
# Debugger module for the Fenrir screen reader.
|
||||||
|
|
||||||
ERROR = 0
|
ERROR = 0
|
||||||
WARNING = 1
|
WARNING = 1
|
||||||
INFO = 2
|
INFO = 2
|
||||||
|
Loading…
Reference in New Issue
Block a user