improve application detection and speed up

This commit is contained in:
chrys 2016-10-03 00:01:52 +02:00
parent bc5bc3d1ef
commit f231f72cbe
4 changed files with 17 additions and 14 deletions

View File

@ -21,12 +21,12 @@ class screenManager():
def shutdown(self): def shutdown(self):
self.env['runtime']['settingsManager'].shutdownDriver('screenDriver') self.env['runtime']['settingsManager'].shutdownDriver('screenDriver')
def update(self, trigger = 'onUpdate'): def update(self, trigger='onUpdate'):
self.env['runtime']['screenDriver'].getCurrScreen() self.env['runtime']['screenDriver'].getCurrScreen()
if not self.isSuspendingScreen(): if not self.isSuspendingScreen():
if trigger == 'onUpdate' or self.isScreenChange():
self.env['runtime']['screenDriver'].getCurrApplication()
self.env['runtime']['screenDriver'].update(trigger) self.env['runtime']['screenDriver'].update(trigger)
if trigger == 'onUpdate' or self.isScreenChange() or len(self.env['screenData']['newDelta']) > 6:
self.env['runtime']['screenDriver'].getCurrApplication()
self.env['screenData']['lastScreenUpdate'] = time.time() self.env['screenData']['lastScreenUpdate'] = time.time()
def isSuspendingScreen(self): def isSuspendingScreen(self):

View File

@ -33,7 +33,10 @@ class driver():
r, w, x = select(self.iDevices, [], [], self.env['runtime']['settingsManager'].getSettingAsFloat('screen', 'screenUpdateDelay')) r, w, x = select(self.iDevices, [], [], self.env['runtime']['settingsManager'].getSettingAsFloat('screen', 'screenUpdateDelay'))
if r != []: if r != []:
for fd in r: for fd in r:
while(True):
event = self.iDevices[fd].read_one() event = self.iDevices[fd].read_one()
if not event:
return None
self.env['input']['eventBuffer'].append( [self.iDevices[fd], self.uDevices[fd], event]) self.env['input']['eventBuffer'].append( [self.iDevices[fd], self.uDevices[fd], event])
if event.code != 0: if event.code != 0:
currMapEvent = self.env['runtime']['inputDriver'].mapEvent(event) currMapEvent = self.env['runtime']['inputDriver'].mapEvent(event)

View File

@ -71,7 +71,7 @@ class driver():
return xlist return xlist
def update(self, trigger='updateScreen'): def update(self, trigger='onUpdate'):
newContentBytes = b'' newContentBytes = b''
try: try:
# read screen # read screen