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:55:58 (GMT) |
commit | 45af7d4bfac4e2b787af0f445ecdde2a9356e735 (patch) | |
tree | f38cba99135a1c0cdbc27a4f26b601e8675c138a | |
parent | 7d0821ad486fd80866fe2f855387943e1541587f (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 585a053..dc14f9c 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: sh = sha.new() data = self._name + hex(self._flags) sh.update(data) diff --git a/src/jarabe/desktop/meshbox.py b/src/jarabe/desktop/meshbox.py index 3a2123a..e7bba7b 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: sh = sha.new() data = self._name + hex(self._flags) sh.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, |