[gnome-games/sudoku-tube] Display contact alias when prompting user for tube
- From: Zhang Sen <zhangsen src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gnome-games/sudoku-tube] Display contact alias when prompting user for tube
- Date: Fri, 14 Aug 2009 12:20:02 +0000 (UTC)
commit f8b1c3144a5f34b09f669849d641dba50da159c4
Author: Zhang Sen <zh jesse gmail com>
Date: Fri Aug 14 20:18:47 2009 +0800
Display contact alias when prompting user for tube
And some other trivial fix
gnome-sudoku/src/lib/main.py | 20 +++++---------------
gnome-sudoku/src/lib/tube_handler.py | 17 +++++++++++++----
2 files changed, 18 insertions(+), 19 deletions(-)
---
diff --git a/gnome-sudoku/src/lib/main.py b/gnome-sudoku/src/lib/main.py
index fb5764b..9715673 100644
--- a/gnome-sudoku/src/lib/main.py
+++ b/gnome-sudoku/src/lib/main.py
@@ -92,13 +92,12 @@ class SudokuGame(gconf_wrapper.GConfWrapper):
# generate puzzles while our use is working...
self._run_background_generator()
- def _auto_open_game(self, check_saved=True):
- game, game_type = None, None
- if check_saved:
- game = self._auto_load_saved()
- game_type = game_selector.NewOrSavedGameSelector.SAVED_GAME
+ def _auto_open_game(self):
+ game = self._auto_load_saved()
+ game_type = game_selector.NewOrSavedGameSelector.SAVED_GAME
+
if not game:
- game = self._auto_load_new()
+ game = self._generate_new_puzzle()
game_type = game_selector.NewOrSavedGameSelector.NEW_GAME
if game:
@@ -119,15 +118,6 @@ class SudokuGame(gconf_wrapper.GConfWrapper):
logger.debug("no saved game found")
return None
- def _auto_load_new(self):
- """Automatically open a new game"""
- new_puzzle = self._generate_new_puzzle()
- if new_puzzle:
- return new_puzzle
- else:
- logger.error("failed to genereate new puzzle")
- return None
-
def _generate_new_puzzle(self):
# TODO should use preconfigured or user-selected level
level = self.gconf['game-level']
diff --git a/gnome-sudoku/src/lib/tube_handler.py b/gnome-sudoku/src/lib/tube_handler.py
index d04c141..329be8e 100644
--- a/gnome-sudoku/src/lib/tube_handler.py
+++ b/gnome-sudoku/src/lib/tube_handler.py
@@ -16,11 +16,15 @@ from telepathy.constants import (
from telepathy.interfaces import (
CHANNEL_INTERFACE,
CHANNEL_INTERFACE_TUBE,
- CHANNEL_TYPE_DBUS_TUBE)
+ CHANNEL_TYPE_DBUS_TUBE,
+ CONN_INTERFACE_ALIASING)
DBusGMainLoop(set_as_default=True)
logger = logging.getLogger("main.tubehandler")
+def _get_contact_alias(conn, handle):
+ return conn[CONN_INTERFACE_ALIASING].RequestAliases([handle])[0]
+
def _sanitize_service_name(service_name):
return service_name.replace('.', '_')
@@ -32,7 +36,10 @@ def _build_object_path(bus_name):
return '/' + bus_name.replace('.', '/')
class TubeHandler(dbus.service.Object):
- """Listen to coming tube and emit a signal for it"""
+ """Listen to coming tube
+
+ tube_received_cb is called when the tube becomes open
+ """
def __init__(self, service_name, tube_received_cb):
logger.debug("creating TubeHandler")
@@ -55,7 +62,8 @@ class TubeHandler(dbus.service.Object):
logger.debug("Tube received on %s" % channel)
self._bus_name = bus_name
self._channel = channel
- conn = Connection(bus_name, connection,
+ self._peer_handle = handle
+ self._conn = Connection(bus_name, connection,
ready_handler=self._ready_handler)
def _ready_handler(self, conn):
@@ -98,7 +106,8 @@ class TubeHandler(dbus.service.Object):
flags=gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT,
buttons=(gtk.STOCK_OK, gtk.RESPONSE_ACCEPT,
gtk.STOCK_NO, gtk.RESPONSE_REJECT))
- label = gtk.Label("<get-contact> wants to play with you")
+ alias = _get_contact_alias(self._conn, self._peer_handle)
+ label = gtk.Label("%s wants to play with you" % alias)
label.show()
dialog.vbox.pack_start(label)
dialog.connect("response", reply_cb)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]