Commit graph

1,415 commits

Author SHA1 Message Date
Goffi
ec25ba82e1 core: added getEntitiesData which get cache data for several entities at once 2015-02-09 21:39:51 +01:00
Goffi
5049bc0b47 core: boolConst is used to convert a boolean value to its equivalent string constant 2015-02-09 21:39:47 +01:00
souliane
902616219a quick_frontend: getOrCreateWidget callbacks can return another widget 2015-02-09 09:19:30 +01:00
souliane
5b0a210fab frontends (tools): Pyjamas's JID implementation can be compared to an object of a different type:
- always return False if the other object is not a JID
    - to not fake list membership's test, hash(jid) now differs from hash(unicode(jid))
2015-02-07 14:47:23 +01:00
souliane
b1ab06ba6a quick_frontend: fixes hash setting for QuickWidget 2015-02-06 22:28:00 +01:00
Goffi
fcfe8c8517 quick frontend(quick widgets): fixed bad condition test in previous commit 2015-02-06 20:46:14 +01:00
Goffi
95faddd84c quick frontend(quick widgets): added the ability to use a callable with getOrCreateWidget's on_existing_widget 2015-02-06 20:43:28 +01:00
Goffi
ca2e0ccc66 quick_ frontend (quick widgets): added explanation in docstring for non special keywords in getOrCreateWidget 2015-02-06 20:09:01 +01:00
souliane
f0f097c106 quick_frontend: remove the contact from the groups it has been removed from 2015-02-06 19:31:13 +01:00
Goffi
437b2f0635 merged souliane commits 2015-02-06 19:29:37 +01:00
Goffi
679e5759bb quick frontend (quick widgets): class' __name__ method is used for classes_map hash because the use of class directly was causing bugs with pyjamas (difficult to find, several MicroblogPanel instances were added only once in Libervia's TabPanel, hash method seemed buggy) 2015-02-06 19:05:51 +01:00
Goffi
f9f86f67a1 quick frontend (quick_widgets): add deleteWidget method 2015-02-06 19:03:13 +01:00
Goffi
31c7776f03 quick frontends (QuickContactList): added isEntityInGroup method 2015-02-06 19:02:10 +01:00
Goffi
588d65132c Quick Frontend (quick_widgets): added on_existing_widget in getOrCreateWidget (see docstring for more infos) + use of constants 2015-02-06 19:01:06 +01:00
Goffi
b4937bef76 core: fixed items registration in roster management 2015-02-06 18:54:44 +01:00
Goffi
d07237f49d core: fixed some logging calls without unicode strings, and use of print 2015-02-06 18:53:07 +01:00
Goffi
983dcf926e core: better use of C.bool: C.bool only accept basestring subclasses and return the associated constant, C.boolConst return the associated constant for a boolean value 2015-02-06 18:46:26 +01:00
souliane
a006a7c953 quick_frontend: add some properties for QuickContactList 2015-02-05 12:10:42 +01:00
souliane
52a713cde9 quick_frontend: fix the history log message 2015-02-06 10:50:01 +01:00
souliane
6697abba6f modification of the social contract according to the General Assembly of 19/08/2014 2015-02-05 11:59:26 +01:00
souliane
0bb673aa64 plugin groupblog: fixes bad errback default value 2015-01-30 14:08:01 +01:00
Goffi
e134c36aa7 plugin XEP-0054: couple of fixes in VCard/avatar management:
- fixed a confusion between full jid and bare jid, resulting in always requesting VCard
    - check of cache data loading before starting
    - stored cache are restored for all jid, not only ones in roster
    - client jid cache is correctly saved/restored
    - minor other fixes

This plugin still need some work, but this patch fixes (hopefully) the major issues
2015-01-26 02:03:16 +01:00
Goffi
7bb52b5969 core: added items() and iteritems() methods to PersistentDict 2015-01-26 01:57:06 +01:00
souliane
3ee9f140df remove remaining references to Wix 2015-01-24 16:12:50 +01:00
Goffi
8ce5c1862b core, frontends: refactoring to base Libervia on QuickFrontend (big mixed commit):
/!\ not finished, everything is still instable !
    - bridge: DBus bridge has been modified to allow blocking call to be called in the same way as asynchronous calls
    - bridge: calls with a callback and no errback are now possible, default errback log the error
    - constants: removed hack to manage presence without OrderedDict, as an OrderedDict like class has been implemented in Libervia
    - core: getLastResource has been removed and replaced by getMainResource (there is a global better management of resources)
    - various style improvments: use of constants when possible, fixed variable overlaps, import of module instead of direct class import
    - frontends: printInfo and printMessage methods in (Quick)Chat are more generic (use of extra instead of timestamp)
    - frontends: bridge creation and option parsing (command line arguments) are now specified by the frontend in QuickApp __init__
    - frontends: ProfileManager manage a more complete plug sequence (some stuff formerly manage in contact_list have moved to ProfileManager)
    - quick_frontend (quick_widgets): QuickWidgetsManager is now iterable (all widgets are then returned), or can return an iterator on a specific class (return all widgets of this class) with getWidgets
    - frontends: tools.jid can now be used in Pyjamas, with some care
    - frontends (XMLUI): profile is now managed
    - core (memory): big improvment on entities cache management (and specially resource management)
    - core (params/exceptions): added PermissionError
    - various fixes and improvments, check diff for more details
2015-01-24 01:00:29 +01:00
Goffi
f45e55388f Wix removal: Wix is now officially abandonned (a futur desktop frontend will replace it) 2015-01-24 00:15:01 +01:00
Goffi
1b0d6ecc30 quick_frontend, primitivus: moved parts of primitivus's profileManager to quick_frontend 2015-01-24 00:14:58 +01:00
souliane
b080904b38 plugin XEP-0313: handle forwarded pubsub event 2015-01-15 21:54:53 +01:00
souliane
c259a80924 tmp: update wokkel MAM implementation 2015-01-15 21:02:41 +01:00
souliane
1a1deb5056 tmp, plugins: fixes the imports fron sat.tmp 2015-01-14 10:44:49 +01:00
souliane
27cb7fac73 plugin XEP-0313: update (still draft) 2015-01-09 10:51:12 +01:00
souliane
24fafc9760 tmp: update tmp.wokkel.rsm, add tmp.wokkel.mam 2015-01-09 10:50:11 +01:00
souliane
85749f8a8b plugin XEP-0060: free SatPubSubClient instance on profile disconnection 2015-01-09 10:45:15 +01:00
souliane
303b58cb03 plugin groupblog: fixes bad errback value 2015-01-09 10:44:37 +01:00
souliane
f09b837c36 setup: fixes to install sat.tmp.wokkel 2014-12-25 12:26:49 +01:00
souliane
62981779ac plugin XEP-0334: first draft 2014-12-25 12:09:05 +01:00
souliane
08e293a81d test: fix/improve tests for plugins XEP-0033 and XEP-0085 (mainly to return a Deferred) 2014-12-25 11:49:13 +01:00
souliane
4a4760b80b plugin XEP-0313: first draft:
- you can already test it with d-feet but it will bug unless you apply the changeset 60dfa2f5d61f which is waiting in the branch "frontends_multi_profiles" (actually just one "assert" to comment in plugin_xep_0085.py)
2014-12-19 14:43:42 +01:00
souliane
01e8ee664e core (xmpp): set missing "from" attribute of received messages to the server domain 2014-12-19 11:42:45 +01:00
souliane
cb0eaacf28 plugin XEP-0277: minor fix in plugin declaration 2014-12-19 11:41:23 +01:00
souliane
0fe6da06ce plugin XEP-0297: first draft 2014-12-19 11:40:28 +01:00
souliane
4d139af49b plugin XEP-0203: first draft 2014-12-19 11:38:24 +01:00
souliane
9c53c50810 test: fixes tests for XEP-0033 2014-12-19 11:36:43 +01:00
souliane
852106becd test: refactoring:
- rename internal init methods to reinit
    - rename getSentMessage to getSentMessageXml
    - rename getSentMessageRaw to getSentMessage
2014-12-19 11:36:00 +01:00
souliane
a6e6cd68be test: fixes import for wokkel.rsm 2014-12-15 15:29:08 +01:00
souliane
d262aff438 test: add tests for plugin_misc_groupblog 2014-12-15 14:05:28 +01:00
souliane
f3b7bd1ec2 plugins XEP-0060, XEP-0277, groupblog: make use of RSM (XEP-0059) 2014-12-15 14:04:19 +01:00
souliane
bbcced67d1 plugins XEP-0059, XEP-0060: leave internal wokkel extensions to sat.tmp.wokkel 2014-12-15 14:03:13 +01:00
souliane
642e8adbf4 use sat.tmp.wokkel as a buffer module until the changes are integrated to wokkel 2014-12-15 12:46:58 +01:00
Goffi
e4708c9cbb quick_frontend, primitivus: multi-profiles refactoring part 1 (big commit, sorry :p):
This refactoring allow primitivus to manage correctly several profiles at once, with various other improvments:
    - profile_manager can now plug several profiles at once, requesting password when needed. No more profile plug specific method is used anymore in backend, instead a "validated" key is used in actions
    - Primitivus widget are now based on a common "PrimitivusWidget" classe which mainly manage the decoration so far
    - all widgets are treated in the same way (contactList, Chat, Progress, etc), no more chat_wins specific behaviour
    - widgets are created in a dedicated manager, with facilities to react on new widget creation or other events
    - quick_frontend introduce a new QuickWidget class, which aims to be as generic and flexible as possible. It can manage several targets (jids or something else), and several profiles
    - each widget class return a Hash according to its target. For example if given a target jid and a profile, a widget class return a hash like (target.bare, profile), the same widget will be used for all resources of the same jid
    - better management of CHAT_GROUP mode for Chat widgets
    - some code moved from Primitivus to QuickFrontend, the final goal is to have most non backend code in QuickFrontend, and just graphic code in subclasses
    - no more (un)escapePrivate/PRIVATE_PREFIX
    - contactList improved a lot: entities not in roster and special entities (private MUC conversations) are better managed
    - resources can be displayed in Primitivus, and their status messages
    - profiles are managed in QuickFrontend with dedicated managers


This is work in progress, other frontends are broken. Urwid SàText need to be updated. Most of features of Primitivus should work as before (or in a better way ;))
2014-12-10 19:00:09 +01:00