diff options
author | Daniel Drake <dsd@laptop.org> | 2009-12-24 15:08:09 (GMT) |
---|---|---|
committer | Daniel Drake <dsd@laptop.org> | 2010-01-03 11:49:44 (GMT) |
commit | e16b2c50892c7ed657d414cba0f15be1d47886c9 (patch) | |
tree | 0f8e29be7ddb9b35b52c2215bce8aa1caf1f4119 | |
parent | 839970e6bad870e5c00bb065d949019c7fffccda (diff) |
Only parse colors from ad-hoc network names that contain them (#1604)
-rw-r--r-- | extensions/deviceicon/network.py | 10 | ||||
-rw-r--r-- | src/jarabe/desktop/meshbox.py | 10 |
2 files changed, 16 insertions, 4 deletions
diff --git a/extensions/deviceicon/network.py b/extensions/deviceicon/network.py index 2776f0a..3f27ec2 100644 --- a/extensions/deviceicon/network.py +++ b/extensions/deviceicon/network.py @@ -309,6 +309,11 @@ class WirelessDeviceView(ToolButton): def __ap_properties_changed_cb(self, properties): self._update_properties(properties) + def _name_encodes_colors(self): + """Match #XXXXXX,#YYYYYY at the end of the network name""" + return self._name[-7] == '#' and self._name[-8] == ',' \ + and self._name[-15] == '#' + def _update_properties(self, properties): if 'Mode' in properties: self._mode = properties['Mode'] @@ -324,11 +329,12 @@ class WirelessDeviceView(ToolButton): self._frequency = properties['Frequency'] if self._color == None: - if self._mode == network.NM_802_11_MODE_ADHOC: + if self._mode == network.NM_802_11_MODE_ADHOC \ + and self._name_encodes_colors(): encoded_color = self._name.split("#", 1) if len(encoded_color) == 2: self._color = xocolor.XoColor('#' + encoded_color[1]) - if self._mode == network.NM_802_11_MODE_INFRA: + else: sha_hash = hashlib.sha1() data = self._name + hex(self._flags) sha_hash.update(data) diff --git a/src/jarabe/desktop/meshbox.py b/src/jarabe/desktop/meshbox.py index 2c58fe6..76880b8 100644 --- a/src/jarabe/desktop/meshbox.py +++ b/src/jarabe/desktop/meshbox.py @@ -86,11 +86,12 @@ class WirelessNetworkView(CanvasPulsingIcon): self._connection = None self._color = None - if self._mode == network.NM_802_11_MODE_ADHOC: + if self._mode == network.NM_802_11_MODE_ADHOC \ + and self._name_encodes_colors(): encoded_color = self._name.split("#", 1) if len(encoded_color) == 2: self._color = xocolor.XoColor('#' + encoded_color[1]) - if self._mode == network.NM_802_11_MODE_INFRA: + else: sha_hash = hashlib.sha1() data = self._name + hex(self._flags) sha_hash.update(data) @@ -142,6 +143,11 @@ class WirelessNetworkView(CanvasPulsingIcon): path=self._device.object_path, dbus_interface=_NM_WIRELESS_IFACE) + def _name_encodes_colors(self): + """Match #XXXXXX,#YYYYYY at the end of the network name""" + return self._name[-7] == '#' and self._name[-8] == ',' \ + and self._name[-15] == '#' + def _create_palette(self): icon_name = get_icon_state(_ICON_NAME, self._strength) self._palette_icon = Icon(icon_name=icon_name, |