mirror of
https://github.com/gryf/wicd.git
synced 2025-12-24 23:22:27 +01:00
Merged mainline.
This commit is contained in:
@@ -2,3 +2,4 @@ experimental.wpr
|
||||
install.log
|
||||
uninstall.log
|
||||
.bzrignore
|
||||
vcsinfo.py
|
||||
|
||||
26
wicd/misc.py
26
wicd/misc.py
@@ -313,16 +313,20 @@ def get_gettext():
|
||||
# http://www.learningpython.com/2006/12/03/translating-your-pythonpygtk-application/
|
||||
local_path = wpath.translations
|
||||
langs = []
|
||||
osLanguage = os.environ.get('LANGUAGE', None)
|
||||
if osLanguage:
|
||||
langs += osLanguage.split(":")
|
||||
osLanguage = None
|
||||
osLanguage = os.environ.get('LC_MESSAGES', None)
|
||||
if osLanguage:
|
||||
langs += osLanguage.split(":")
|
||||
try:
|
||||
lc, encoding = locale.getdefaultlocale()
|
||||
except ValueError, e:
|
||||
print str(e)
|
||||
print "Default locale unavailable, falling back to en_US"
|
||||
if (lc):
|
||||
langs = [lc]
|
||||
osLanguage = os.environ.get('LANGUAGE', None)
|
||||
if (osLanguage):
|
||||
langs += osLanguage.split(":")
|
||||
langs += [lc]
|
||||
langs += ["en_US"]
|
||||
lang = gettext.translation('wicd', local_path, languages=langs,
|
||||
fallback=True)
|
||||
@@ -405,17 +409,19 @@ def choose_sudo_prog(prog_num=0):
|
||||
return find_path(sudo_dict[prog_num])
|
||||
desktop_env = detect_desktop_environment()
|
||||
env_path = os.environ['PATH'].split(":")
|
||||
paths = []
|
||||
|
||||
if desktop_env == "kde":
|
||||
paths = []
|
||||
for p in env_path:
|
||||
paths.extend([p + '/kdesu', p + '/kdesudo', p + '/ktsuss'])
|
||||
progs = ["kdesu", "kdesudo", "ktusss"]
|
||||
else:
|
||||
paths = []
|
||||
for p in env_path:
|
||||
paths.extend([p + '/gksudo', p + "/gksu", p + '/ktsuss'])
|
||||
progs = ["gksudo", "gksu", "ktsuss"]
|
||||
|
||||
for prog in progs:
|
||||
paths.extend([os.path.join(p, prog) for p in env_path])
|
||||
|
||||
for path in paths:
|
||||
if os.path.exists(path):
|
||||
print "returning %s" % path
|
||||
return path
|
||||
|
||||
return None
|
||||
|
||||
@@ -921,6 +921,7 @@ class WirelessDaemon(dbus.service.Object):
|
||||
self.wifi = wifi
|
||||
self._debug_mode = debug
|
||||
self.forced_disconnect = False
|
||||
self._scanning = False
|
||||
self.LastScan = []
|
||||
self.config = ConfigManager(os.path.join(wpath.etc,
|
||||
"wireless-settings.conf"),
|
||||
@@ -949,6 +950,10 @@ class WirelessDaemon(dbus.service.Object):
|
||||
be done synchronously.
|
||||
|
||||
"""
|
||||
if self._scanning:
|
||||
if self.debug_mode:
|
||||
print "scan already in progress, skipping"
|
||||
return False
|
||||
if self.debug_mode:
|
||||
print 'scanning start'
|
||||
self.SendStartScanSignal()
|
||||
@@ -956,6 +961,7 @@ class WirelessDaemon(dbus.service.Object):
|
||||
self._sync_scan()
|
||||
else:
|
||||
self._async_scan()
|
||||
return True
|
||||
|
||||
@misc.threaded
|
||||
def _async_scan(self):
|
||||
@@ -1251,12 +1257,12 @@ class WirelessDaemon(dbus.service.Object):
|
||||
@dbus.service.signal(dbus_interface='org.wicd.daemon.wireless', signature='')
|
||||
def SendStartScanSignal(self):
|
||||
""" Emits a signal announcing a scan has started. """
|
||||
pass
|
||||
self._scanning = True
|
||||
|
||||
@dbus.service.signal(dbus_interface='org.wicd.daemon.wireless', signature='')
|
||||
def SendEndScanSignal(self):
|
||||
""" Emits a signal announcing a scan has finished. """
|
||||
pass
|
||||
self._scanning = False
|
||||
|
||||
def _wireless_autoconnect(self, fresh=True):
|
||||
""" Attempts to autoconnect to a wireless network. """
|
||||
@@ -1266,9 +1272,7 @@ class WirelessDaemon(dbus.service.Object):
|
||||
print 'Autoconnect failed because wireless interface returned None'
|
||||
return
|
||||
if fresh:
|
||||
print 'start scan'
|
||||
self.Scan(sync=True)
|
||||
print 'end scan'
|
||||
|
||||
for x, network in enumerate(self.LastScan):
|
||||
if bool(network["has_profile"]):
|
||||
@@ -1674,10 +1678,8 @@ def main(argv):
|
||||
wicd_bus = dbus.service.BusName('org.wicd.daemon', bus=bus)
|
||||
daemon = WicdDaemon(wicd_bus, auto_connect=auto_connect)
|
||||
if not no_poll:
|
||||
(child_pid, x, x, x) = gobject.spawn_async(
|
||||
[misc.find_path("python"), "-O", os.path.join(wpath.lib, "monitor.py")],
|
||||
flags=gobject.SPAWN_CHILD_INHERITS_STDIN
|
||||
)
|
||||
(child_pid, x, y, z) = gobject.spawn_async(
|
||||
[misc.find_path("python"), "-O", os.path.join(wpath.lib, "monitor.py")])
|
||||
signal.signal(signal.SIGTERM, sigterm_caught)
|
||||
|
||||
# Enter the main loop
|
||||
|
||||
Reference in New Issue
Block a user