Commit graph

37 commits

Author SHA1 Message Date
mathieui
c890fefbc4 Add an "online" contact sorting method
- put the online contacts at the beginning of the list
- allows, e.g. jid_reverse_online_reverse, to put offline contacts at
  the start of the group, in alphabetical order
2012-08-01 01:36:18 +02:00
mathieui
47c593ddaf Sort the unavailable contacts at the end of the contact list 2012-08-01 01:24:42 +02:00
mathieui
71f813af28 Add a roster_group_sort option, which works like roster_sort
- defaults to "name" (sort by group name)
- document it
- also, micro-optimize get_nb_connected_contacts()
2012-08-01 01:06:57 +02:00
mathieui
1625a4f41f Add a roster_sort option to sort the contacts inside the roster groups
- defaults to jid_show (which means that they are sorted into sub-groups
  by show and are sorted by JID inside those)
- See the default config file or the documentation for details
2012-07-31 23:40:53 +02:00
mathieui
4096e7f427 Also sort the contacts alphabetically
Contacts are first sorted alphabetically, and then sorted again
depending on their show; since the python sorts are stable, the order
will remain and the sub-groups (corresponding to one show type) will be
sorted alphabetically too.
2012-07-31 21:12:59 +02:00
mathieui
4a7f6c5eaf Sort the contacts in the roster groups by show (xa/away/…) 2012-07-31 20:51:18 +02:00
mathieui
0af1c7fe9a Docstrings, and small cleanup 2012-05-21 02:14:25 +02:00
mathieui
c04f0e9783 Prevent the rooms from going “offline”
Add a blacklist inside the roster that contains the bare JIDs of all the
rooms ever joined in this session, so that no JID using this server will
ever be shown as getting “offline”.

If there is a cleaner way to do that (discriminating JIDs), I welcome it.
2012-05-16 02:01:50 +02:00
mathieui
f2377f747b Fix some roster length issues with group folding 2012-05-08 16:14:51 +02:00
mathieui
24341c8429 Prevent some iteration problems 2012-04-27 23:42:22 +02:00
mathieui
725a2245f3 Remove some debug info 2012-04-27 21:09:26 +02:00
mathieui
527e582fb0 New Roster class and new RosterGroup class
Removes for Roster:
    - empty() → Ø
    - get_contact_len() → Ø
    - remove_contact_from_group() → Ø
    - add_contact_to_group() → Ø
    - add_contact() → add()
    - remove_contact() → __delitem__()
    - get_contact_by_jid() → __getitem__()
    - edit_groups_of_contact() → update_contact_groups()

Removes for RosterGroup:
    - has_contact() → __contains__()
    - add_contact() → add()
    - remove_contact() → remove()
    - is_empty() → __len__()
2012-04-27 20:30:05 +02:00
mathieui
1f5d104834 -get -set +@property +@property.setter 2011-11-09 22:00:38 +01:00
mathieui
c3c67b5e0a Code cleanup (unused import, variables, undefined names, etc…) 2011-11-06 21:10:09 +01:00
Todd Eisenberger
d02c764c47 More contact management commands 2011-10-01 05:26:19 -07:00
Florent Le Coz
96794a4e49 Change license to zlib (MIT sucks :() 2011-09-11 17:10:05 +02:00
Florent Le Coz
d41634d4ea Change license to MIT 2011-09-06 02:45:53 +02:00
Florent Le Coz
c93815737f Empty roster on disconnect 2011-06-18 12:52:58 +02:00
mathieui
5d1953a807 fixes #2187 (import/export) 2011-05-24 20:33:37 +02:00
Florent Le Coz
36eed51b90 use config.get() only once instead of doing it at each iteration 2011-03-10 04:57:26 +01:00
mathieui
01f3409505 fixed #2115 2011-02-02 00:51:34 +01:00
Florent Le Coz
9f514d8c7d Avoid a traceback on remove_contact: 2011-01-12 07:50:12 +01:00
Florent Le Coz
469bbd2900 /add and /remove commands, yay 2011-01-12 06:49:33 +01:00
Florent Le Coz
749933fc16 /accept and /deny commands
User can now decide to accept or deny a subscription, in
the roster
2011-01-11 06:43:31 +01:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
d712d2e1c9 update copyright date 2011-01-01 13:27:07 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
1c923fcdcc hop, fixed #2068 2010-12-18 18:54:55 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
c77842e1be fixed #1892 save folded rosters and info_win_height in the config file 2010-12-17 14:36:14 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
545902be7d ConversationTab interface 2010-11-10 21:15:08 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
6fab04a6dc Basic search in the roster (based on contact JIDs) 2010-10-31 18:57:48 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
c091e0c16f Command mode in roster tab, toggle offline contacts with 'o' and sort contacts by show 2010-10-27 22:49:52 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
f4c5e0a091 Multi-resource. Handling <presence /> stanzas. But the normal conversation window is broken :^). Fixed #1888 2010-10-17 17:27:07 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
d4e3e51c1f update e-mail address and README 2010-10-04 01:45:16 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
7453b87f30 fold groups, display-name, focus the tab if user tries to open an already opened conversation (on /join too !), and nicer roster 2010-09-27 01:40:34 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
27938ecf1e group 'none' doesn't need to be created 2010-09-26 18:36:09 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
b7b6889d4e open conversation only if a message has a body. And use the group 'none' for contacts in no groups 2010-09-26 18:35:22 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
390e952829 Basic implementation of the roster and one to one conversations 2010-09-26 18:01:38 +00:00
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13
f638427afc LALALALALALALALALA 2010-09-16 17:57:27 +00:00