Пример #1
0
    def _terminiate_processes(cls, bundle_identifier):
        _log.info("Closing all terminating all processes with the bundle identifier %s" % bundle_identifier)
        from AppKit import NSRunningApplication

        processes = NSRunningApplication.runningApplicationsWithBundleIdentifier_(bundle_identifier)
        for process in processes:
            process.terminate()
Пример #2
0
 def still_running(cls, apps):
     result = []
     for app in apps:
         r = NSRunningApplication.runningApplicationsWithBundleIdentifier_(app.identifier)
         if r.count() > 0:
             result.append(app)
     return result
 def closeBrowsers(self):
     _log.info('Closing all existing safari processes')
     safariInstances = NSRunningApplication.runningApplicationsWithBundleIdentifier_('com.apple.Safari')
     for safariInstance in safariInstances:
         safariInstance.terminate()
     if self.safariProcess:
         _log.info('Safari process console output:\nstdout: %s\nstderr: %s' % self.safariProcess.communicate())
         if self.safariProcess.returncode:
             _log.error('Safari Crashed!')
Пример #4
0
 def _terminate_processes(cls, process_name, bundle_id):
     from AppKit import NSRunningApplication
     _log.info('Closing all processes with name %s' % process_name)
     for app in NSRunningApplication.runningApplicationsWithBundleIdentifier_(bundle_id):
         app.terminate()
         # Give the app time to close
         time.sleep(2)
         if not app.isTerminated():
             _log.error("Terminate failed.  Killing.")
             subprocess.call(['/usr/bin/killall', process_name])
Пример #5
0
 def closeBrowsers(self):
     _log.info('Closing all existing safari processes')
     safariInstances = NSRunningApplication.runningApplicationsWithBundleIdentifier_(
         'com.apple.Safari')
     for safariInstance in safariInstances:
         safariInstance.terminate()
     if self.safariProcess:
         _log.info(
             'Safari process console output:\nstdout: %s\nstderr: %s' %
             self.safariProcess.communicate())
         if self.safariProcess.returncode:
             _log.error('Safari Crashed!')
Пример #6
0
    def __init__(self, domain=None, name=None):
        if not (domain or name):
            raise Exception('Name or domain must be provided')

        self.domain = domain
        self.prefs = Prefs(self.domain)
        self.apps = NSRunningApplication.runningApplicationsWithBundleIdentifier_(self.domain)

        if self.apps:
            self.app = self.apps[0]
            name = name or self.app.localizedName()

        self.name = name
Пример #7
0
 def stop(self):
     try:
         self.mouse_listener.stop()
         self.kb_listener.stop()
         for app in NSRunningApplication.runningApplicationsWithBundleIdentifier_(
                 MOONLIGHT_BUNDLE_ID):
             count = 0
             pid = app.processIdentifier()
             while count < 30 and pid_exists(
                     pid):  # app.isTerminated() is always false.
                 app.forceTerminate()
                 sleep(1)
                 count += 1
     except Exception:
         logger.exception('Failed to stop Moonlight.')
Пример #8
0
 def closeBrowsers(self):
     _log.info('Closing all existing safari processes')
     safariInstances = NSRunningApplication.runningApplicationsWithBundleIdentifier_(
         'com.apple.Safari')
     for safariInstance in safariInstances:
         safariInstance.terminate()
Пример #9
0
 def closeBrowsers(self):
     _log.info('Closing all existing chrome processes')
     chromes = NSRunningApplication.runningApplicationsWithBundleIdentifier_(
         'com.google.Chrome')
     for chrome in chromes:
         chrome.terminate()
 def closeBrowsers(self):
     _log.info('Closing all existing chrome processes')
     chromes = NSRunningApplication.runningApplicationsWithBundleIdentifier_('com.google.Chrome')
     for chrome in chromes:
         chrome.terminate()