summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core/completions.py13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/core/completions.py b/src/core/completions.py
index f17e916c..9fd44f1b 100644
--- a/src/core/completions.py
+++ b/src/core/completions.py
@@ -217,12 +217,13 @@ def completion_message(self, the_input):
n = the_input.get_argument_position(quoted=True)
if n >= 2:
return
- comp = reduce(lambda x, y: x + [i.jid for i in y], (roster[jid].resources for jid in roster.jids() if len(roster[jid])), [])
- comp = sorted(comp)
- bares = sorted(roster[contact].bare_jid for contact in roster.jids() if len(roster[contact]))
- off = sorted(jid for jid in roster.jids() if jid not in bares)
- comp = bares + comp + off
- return the_input.new_completion(comp, 1, '', quotify=True)
+ l = []
+ for jid in roster.jids():
+ if len(roster[jid]):
+ l.append(jid)
+ for resource in roster[jid].resources:
+ l.append(resource.jid)
+ return the_input.new_completion(l, 1, '', quotify=True)
def completion_invite(self, the_input):