mirror of
https://github.com/EDCD/EDMarketConnector.git
synced 2025-04-15 00:30:33 +03:00
parent
021fc43345
commit
5a9d0730d8
@ -30,7 +30,7 @@ from config import appname, applongname, config
|
|||||||
if platform == 'win32' and getattr(sys, 'frozen', False):
|
if platform == 'win32' and getattr(sys, 'frozen', False):
|
||||||
# By default py2exe tries to write log to dirname(sys.executable) which fails when installed
|
# By default py2exe tries to write log to dirname(sys.executable) which fails when installed
|
||||||
import tempfile
|
import tempfile
|
||||||
sys.stderr = open(join(tempfile.gettempdir(), '%s.log' % appname), 'wt')
|
sys.stdout = sys.stderr = open(join(tempfile.gettempdir(), '%s.log' % appname), 'wt', 0) # unbuffered
|
||||||
|
|
||||||
from l10n import Translations
|
from l10n import Translations
|
||||||
Translations().install(config.get('language') or None)
|
Translations().install(config.get('language') or None)
|
||||||
@ -690,13 +690,15 @@ class AppWindow:
|
|||||||
self.status['text'] = unicode(e)
|
self.status['text'] = unicode(e)
|
||||||
|
|
||||||
def onexit(self, event=None):
|
def onexit(self, event=None):
|
||||||
hotkeymgr.unregister()
|
|
||||||
if platform!='darwin' or self.w.winfo_rooty()>0: # http://core.tcl.tk/tk/tktview/c84f660833546b1b84e7
|
if platform!='darwin' or self.w.winfo_rooty()>0: # http://core.tcl.tk/tk/tktview/c84f660833546b1b84e7
|
||||||
config.set('geometry', '+{1}+{2}'.format(*self.w.geometry().split('+')))
|
config.set('geometry', '+{1}+{2}'.format(*self.w.geometry().split('+')))
|
||||||
config.close()
|
self.w.withdraw() # Following items can take a few seconds, so hide the main window while they happen
|
||||||
|
hotkeymgr.unregister()
|
||||||
|
monitor.close()
|
||||||
eddn.close()
|
eddn.close()
|
||||||
self.updater.close()
|
self.updater.close()
|
||||||
self.session.close()
|
self.session.close()
|
||||||
|
config.close()
|
||||||
self.w.destroy()
|
self.w.destroy()
|
||||||
|
|
||||||
def drag_start(self, event):
|
def drag_start(self, event):
|
||||||
|
12
monitor.py
12
monitor.py
@ -119,7 +119,6 @@ class EDLogs(FileSystemEventHandler):
|
|||||||
self.observer = Observer()
|
self.observer = Observer()
|
||||||
self.observer.daemon = True
|
self.observer.daemon = True
|
||||||
self.observer.start()
|
self.observer.start()
|
||||||
atexit.register(self.observer.stop)
|
|
||||||
|
|
||||||
if not self.observed and not polling:
|
if not self.observed and not polling:
|
||||||
self.observed = self.observer.schedule(self, self.currentdir)
|
self.observed = self.observer.schedule(self, self.currentdir)
|
||||||
@ -146,6 +145,17 @@ class EDLogs(FileSystemEventHandler):
|
|||||||
self.observer.unschedule_all()
|
self.observer.unschedule_all()
|
||||||
self.thread = None # Orphan the worker thread - will terminate at next poll
|
self.thread = None # Orphan the worker thread - will terminate at next poll
|
||||||
|
|
||||||
|
def close(self):
|
||||||
|
thread = self.thread
|
||||||
|
self.stop()
|
||||||
|
if self.observer:
|
||||||
|
self.observer.stop()
|
||||||
|
if thread:
|
||||||
|
thread.join()
|
||||||
|
if self.observer:
|
||||||
|
self.observer.join()
|
||||||
|
self.observer = None
|
||||||
|
|
||||||
def running(self):
|
def running(self):
|
||||||
return self.thread and self.thread.is_alive()
|
return self.thread and self.thread.is_alive()
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user