diff options
Diffstat (limited to 'rpms/sugar/0068-Partial-fix-for-GSM-connection-time-see-SL-2992.patch')
-rw-r--r-- | rpms/sugar/0068-Partial-fix-for-GSM-connection-time-see-SL-2992.patch | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/rpms/sugar/0068-Partial-fix-for-GSM-connection-time-see-SL-2992.patch b/rpms/sugar/0068-Partial-fix-for-GSM-connection-time-see-SL-2992.patch new file mode 100644 index 0000000..41d7eb9 --- /dev/null +++ b/rpms/sugar/0068-Partial-fix-for-GSM-connection-time-see-SL-2992.patch @@ -0,0 +1,67 @@ +From 6855cd85421cb8879dd75df324dc940339b9f0ee Mon Sep 17 00:00:00 2001 +From: Sascha Silbe <silbe@activitycentral.com> +Date: Mon, 9 Jan 2012 19:45:38 +0100 +Subject: [PATCH sugar 68/74] (Partial) fix for GSM connection time (see + SL#2992) + +The connection time has apparently been off by a couple of hours (depending +on the time zone; see SL#2992 [1]) ever since we had this feature +(commit f5daf6e). + +This patch addresses the most important use case (controlling the GSM +connection using the Sugar UI) by fixing the time format. If a system +connection is used and brought up before Sugar starts, connection time +calculation will still be off; this seems to be unfixable [1]. + +[1] http://mail.gnome.org/archives/networkmanager-list/2012-January/thread.html#00022 + +Signed-off-by: Sascha Silbe <silbe@activitycentral.com> +--- + extensions/deviceicon/network.py | 17 +++++++---------- + 1 files changed, 7 insertions(+), 10 deletions(-) + +diff --git a/extensions/deviceicon/network.py b/extensions/deviceicon/network.py +index 234b06b..c70db70 100644 +--- a/extensions/deviceicon/network.py ++++ b/extensions/deviceicon/network.py +@@ -364,11 +364,10 @@ def add_alert(self, error, suggestion): + self.error_description_label.set_text(message) + self.error_description_label.show() + +- def update_connection_time(self, connection_time=None): +- if connection_time is not None: +- formatted_time = connection_time.strftime('%H:%M:%S') +- else: +- formatted_time = '00:00:00' ++ def update_connection_time(self, connection_time=0): ++ """Set the time we have been connected for, in seconds""" ++ formatted_time = time.strftime('%H:%M:%S', ++ time.gmtime(connection_time)) + text = _('Connected for %s') % (formatted_time, ) + self.props.secondary_text = glib.markup_escape_text(text) + +@@ -888,8 +887,8 @@ def _update_state(self, state, old_state, reason): + connection = network.find_gsm_connection() + if connection is not None: + connection.set_connected() +- self._connection_timestamp = time.time() - \ +- connection.get_settings().connection.timestamp ++ settings = connection.get_settings() ++ self._connection_timestamp = settings.connection.timestamp + self._connection_time_handler = gobject.timeout_add_seconds( \ + 1, self.__connection_timecount_cb) + self._palette.update_connection_time() +@@ -932,9 +931,7 @@ def __ppp_stats_changed_cb(self, in_bytes, out_bytes): + self._palette.update_stats(in_bytes, out_bytes) + + def __connection_timecount_cb(self): +- self._connection_timestamp = self._connection_timestamp + 1 +- connection_time = \ +- datetime.datetime.fromtimestamp(self._connection_timestamp) ++ connection_time = time.time() - self._connection_timestamp + self._palette.update_connection_time(connection_time) + return True + +-- +1.7.6 + |