Ticket #1604: 0002-Only-parse-colors-from-ad-hoc-network-names-that-con.patch

File 0002-Only-parse-colors-from-ad-hoc-network-names-that-con.patch, 3.1 KB (added by dsd, 14 years ago)
  • extensions/deviceicon/network.py

    From e6b7cbc589555f66a9b9eb1bcadf35c319e101da Mon Sep 17 00:00:00 2001
    From: Daniel Drake <dsd@laptop.org>
    Date: Thu, 24 Dec 2009 15:08:09 +0000
    Subject: [PATCH 2/2] Only parse colors from ad-hoc network names that contain them (#1604)
    
    ---
     extensions/deviceicon/network.py |   10 ++++++++--
     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 686ca96..3c17253 100644
    a b class WirelessDeviceView(ToolButton): 
    309309    def __ap_properties_changed_cb(self, properties):
    310310        self._update_properties(properties)
    311311
     312    def _name_encodes_colors(self):
     313        """Match #XXXXXX,#YYYYYY at the end of the network name"""
     314        return self._name[-7] == '#' and self._name[-8] == ',' \
     315            and self._name[-15] == '#'
     316
    312317    def _update_properties(self, properties):
    313318        if 'Mode' in properties:
    314319            self._mode = properties['Mode']
    class WirelessDeviceView(ToolButton): 
    324329            self._frequency = properties['Frequency']
    325330
    326331        if self._color == None:
    327             if self._mode == network.NM_802_11_MODE_ADHOC:
     332            if self._mode == network.NM_802_11_MODE_ADHOC \
     333                    and self._name_encodes_colors():
    328334                encoded_color = self._name.split("#", 1)
    329335                if len(encoded_color) == 2:
    330336                    self._color = xocolor.XoColor('#' + encoded_color[1])
    331             if self._mode == network.NM_802_11_MODE_INFRA:
     337            else:
    332338                sha_hash = hashlib.sha1()
    333339                data = self._name + hex(self._flags)
    334340                sha_hash.update(data)
  • src/jarabe/desktop/meshbox.py

    diff --git a/src/jarabe/desktop/meshbox.py b/src/jarabe/desktop/meshbox.py
    index 2c58fe6..76880b8 100644
    a b class WirelessNetworkView(CanvasPulsingIcon): 
    8686        self._connection = None
    8787        self._color = None
    8888
    89         if self._mode == network.NM_802_11_MODE_ADHOC:
     89        if self._mode == network.NM_802_11_MODE_ADHOC \
     90                and self._name_encodes_colors():
    9091            encoded_color = self._name.split("#", 1)
    9192            if len(encoded_color) == 2:
    9293                self._color = xocolor.XoColor('#' + encoded_color[1])
    93         if self._mode == network.NM_802_11_MODE_INFRA:
     94        else:
    9495            sha_hash = hashlib.sha1()
    9596            data = self._name + hex(self._flags)
    9697            sha_hash.update(data)
    class WirelessNetworkView(CanvasPulsingIcon): 
    142143                                      path=self._device.object_path,
    143144                                      dbus_interface=_NM_WIRELESS_IFACE)
    144145
     146    def _name_encodes_colors(self):
     147        """Match #XXXXXX,#YYYYYY at the end of the network name"""
     148        return self._name[-7] == '#' and self._name[-8] == ',' \
     149            and self._name[-15] == '#'
     150
    145151    def _create_palette(self):
    146152        icon_name = get_icon_state(_ICON_NAME, self._strength)
    147153        self._palette_icon = Icon(icon_name=icon_name,