Welcome to mirror list, hosted at ThFree Co, Russian Federation.

dev.gajim.org/gajim/gajim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUmmu <jeff@ummu.org>2009-08-24 14:49:19 +0400
committerUmmu <jeff@ummu.org>2009-08-24 14:49:19 +0400
commit25dc3f3a837cdf033a7986467f97da8907b2bbe8 (patch)
tree9b6bd39e67b019b12d035b03cee702b6f48adfed
parent1af82499712b3e5c77888bf2f0e9237e2ebcaaa9 (diff)
sends remove stanza when line is removed
-rw-r--r--src/common/connection.py10
-rw-r--r--src/common/jingle.py4
-rw-r--r--src/whiteboardwidget.py7
3 files changed, 19 insertions, 2 deletions
diff --git a/src/common/connection.py b/src/common/connection.py
index 8d206e034..6ba221b02 100644
--- a/src/common/connection.py
+++ b/src/common/connection.py
@@ -1987,6 +1987,16 @@ class Connection(ConnectionHandlers):
'parent':parent}
sxe.addChild(name='new', attrs=attrs)
self.connection.send(message)
+
+ def delete_whiteboard_node(self, jid, sid, rids):
+ message = common.xmpp.Node(node="<message to='%s' xmlns='jabber:client'/>"
+ % jid)
+ sxe = message.addChild(name='sxe', attrs={'session':sid},
+ namespace='urn:xmpp:tmp:sxe')
+
+ for x in rids:
+ sxe.addChild(name='remove', attrs = {'target':x})
+ self.connection.send(message)
diff --git a/src/common/jingle.py b/src/common/jingle.py
index 74e22d425..066430a1a 100644
--- a/src/common/jingle.py
+++ b/src/common/jingle.py
@@ -388,6 +388,10 @@ class JingleWhiteboard(JingleContent):
self.session.connection.send_whiteboard_node(self.session.peerjid,
self.session.sid, items, rids)
+
+ def del_item(self, rids):
+ self.session.connection.delete_whiteboard_node(self.session.peerjid,
+ self.session.sid, rids)
def encode(self, xml):
# encodes it sendable string
diff --git a/src/whiteboardwidget.py b/src/whiteboardwidget.py
index 7b5f2ff96..c4ca613c2 100644
--- a/src/whiteboardwidget.py
+++ b/src/whiteboardwidget.py
@@ -304,14 +304,17 @@ class SVGObject():
self.session.send_items(self.items, rids)
def del_item(self, item):
+ rids = []
for x in self.items.keys():
- print item
if self.items[x]['type'] == 'element':
if self.items[x]['data'][1] == item:
- print 'found'
for y in self.items[x]['children']:
+ rids.append(y)
self.del_rid(y)
+ rids.append(x)
self.del_rid(x)
+ break
+ self.session.del_item(rids)
def clear_canvas(self):
for x in self.items.keys():