Goffi
565c0b2b71
quick_frontend (menus): added a quick_menus module to manage easily menus logic:
...
- there are 2 mains types of menu: MenuItem which can be launched, and MenuCategory which contains other menus
- local menus (from frontend only) and distant menus (from backend and its plugins) are managed
- there is a menu manager which, in a similar ways as for widgets, manages the menus logic and should be instantiated by host
- when a context is necessary (this is the case for most of menus), a data collector is used: it collects data from the caller (the instance linked to the menu) and construct data which is then sent throught bridge
- to have implementation specific to a frontend which override the backend one, there is a MenuHook class
- it is possible to place an expected menu in the desired position with MenuPlaceHolder class
2015-03-17 19:33:05 +01:00
Goffi
991a2cbf33
quick_frontends: added "menu" listeners, which is called when a menu is added or removed.
2015-03-17 19:33:04 +01:00
Goffi
0a10ae37a6
frontends: added a host_listener module which manage a listener launched when host is ready, useful to instantiate things on host in optional modules (e.g. menus).
2015-03-17 19:30:43 +01:00
souliane
b76d829249
quick_frontend, primitivus (chat): pass a sorted list to Chat.setPresents
2015-03-11 20:06:13 +01:00
souliane
e597a804d9
frontends (quick_frontend, primitivus): fixes room games:
...
- add quick_frontend.quick_games for registering the signals and registering the UI classes
- rename the signals handlers to fit the convention (e.g.: tarotGameScoreHandler)
- rename card_game to game_tarot, quick_card_game to quick_game_tarot, CardGame to TarotGame
2015-03-11 12:43:48 +01:00
souliane
5ef7999fa7
plugins room_game, quiz, radiocol, tarot: use JID instead of unicode in many methods + class attributes
2015-03-11 12:36:22 +01:00
souliane
d9cc2f181e
plugins XEP-0045, XEP-0249, parrot: use JID instead of unicode in many methods + class attributes
2015-03-11 12:35:21 +01:00
souliane
2a7bf77142
core (constants): add menu type MENU_ROOM_OCCUPANT_CONTEXT
2015-03-09 16:37:15 +01:00
souliane
204f024e0c
plugin XEP-0045: make joinMUC asynchronous and fixes its handler
2015-03-07 16:28:12 +01:00
souliane
b524d41446
core: fixes bug introduced by 1262 (f8a8434dbac7) in SAT.delContact
2015-03-06 16:06:38 +01:00
souliane
723cb3cce4
frontends (primitivus): fixes setting the presence and status (for now all the profiles share the same info)
2015-03-06 15:24:45 +01:00
souliane
5169c7f602
frontends (primitivus): assign the current profile to the parameters dialog
2015-03-06 14:46:03 +01:00
souliane
6336e629c0
quick_frontend: register the 'personalEvent' signal
2015-03-06 14:22:49 +01:00
souliane
728d264136
quick_frontend: replace last occurences of QuickApp.chat_wins with QuickApp.widgets
2015-03-05 13:48:49 +01:00
souliane
3a35a5590d
frontends (primitivus): fixes MUC nicks completion
2015-03-04 14:04:03 +01:00
souliane
b160e3d92c
quick_frontend: add a method getWidget to return a widget without creating it if it doesn't exist
2015-03-04 14:17:38 +01:00
souliane
16cdbbbe1f
frontends: add listeners 'profilePlugged', 'disconnect' and 'gotMenus' (the last one to be removed when the menus are refactored to quick_app)
2015-03-03 22:17:57 +01:00
souliane
5d1681de93
frontends (QuickApp), tools (TriggerManager): frontends can also use triggers + add those for sending and receiving a message
2015-03-03 15:05:10 +01:00
souliane
8b15911077
frontends (XMLUI): fixes wrong argument name
2015-03-03 06:00:23 +01:00
Goffi
3ed295e7b1
quick frontends: signal cache: if a signal arrives between the beginning of profile plugging, and the when the profile is actually ready, it is cached and replayed when the profile is ready.
2015-02-24 20:29:57 +01:00
Goffi
90b4969e39
primitivus (contact list): removed our own bare jid from not_in_roster
2015-02-24 18:21:03 +01:00
Goffi
542e1d4753
quick frontends (contact list): added self.whoami
2015-02-24 18:20:34 +01:00
Goffi
8f5b116211
quick_frontends, primitivus (contact list): added nick observer + implemented onNickUpdate
2015-02-24 17:14:10 +01:00
Goffi
60bc78db4c
plugin XEP-0054: "nick" is now keeped in cache:
...
- cache now manage different kind of data (instead of only avatar)
- PeristentBinaryDict is used to keep cache (because we now store a dict, not just strings)
- CACHED_DATA is a set of data kept in cache (only nick and avatar so far)
- a signal update flag is put on "nick"
- data in cache are reset if they are not present in cache (this avoid to keep the old value)
2015-02-24 17:01:33 +01:00
Goffi
1492f2a3d7
core (persistent dict): added setdefault method
2015-02-24 16:54:28 +01:00
Goffi
d1dad92f8c
quick frontends, primitivus: fixed listener calls (kwargs where forgotten) + fixed presence listener + renamed updatePresence to onPresenceUpdate for consistency with oter listeners
2015-02-24 16:52:44 +01:00
Goffi
3d568ab9c8
quick frontends: fixed use of profile for listeners
2015-02-24 14:40:19 +01:00
Goffi
27c26487c3
merged souliane changes
2015-02-23 18:08:22 +01:00
Goffi
288aaca7e8
primitivus, quick_frontends: moved newMessage signal handler to quick_frontend
2015-02-23 18:04:25 +01:00
Goffi
d3dd1ce464
plugin XEP-0085: fixed bad call to udateEntityData
2015-02-23 18:04:25 +01:00
Goffi
4c3525a5f1
quick frontends(contact list): added a getFullJid method to add resource to a bare jid
2015-02-23 18:04:25 +01:00
Goffi
e541547e23
quick_frontends (contact list): use of intermediate method for showEmptyGroups and showOfflineMessages to convert bridge values to actual booleans
2015-02-23 18:04:16 +01:00
souliane
b836fef4dd
quick_frontend, primitivus: use a listener to update the contact list when receiving a presence
2015-02-22 21:30:20 +01:00
souliane
8c46a23869
quick_frontend (quick_app): addListener takes a profiles_filter argument to check the profile before calling a listener (profile must be passed right after the event type in callListeners)
2015-02-22 20:39:33 +01:00
souliane
d70f08d524
plugin XEP-0085: fixes the calls to memory.deleteEntityDatum and self.updateCache (was self.updateEntityData, has been renamed to avoid confusion with the memory method)
2015-02-22 11:43:11 +01:00
souliane
ed8821d54b
quick_frontend: add a 'presence' listener for the 'presenceUpdate' signal
2015-02-22 15:11:29 +01:00
souliane
cf58422fcc
quick_frontend (quick_contact_list): add property roster_entities_connected and method getSpecials
2015-02-21 12:39:04 +01:00
souliane
9461ac75ce
frontends: merge sat_frontends.constants to sat_frontends.quick_frontend.constants
2015-02-22 14:13:42 +01:00
souliane
fa8f119a56
quick_frontend (quick_app): fixes the call to a bridge method that was done with a JID instead of unicode
2015-02-22 13:58:33 +01:00
souliane
b5d70cbe34
core, quick_frontends: fixes one typo and a variable naming issue
2015-02-21 17:22:39 +01:00
souliane
4c7e81ad6c
quick_frontend, primitivus: fixes typo between method alert and class Alert
2015-02-21 12:34:48 +01:00
souliane
269e2a7c8b
frontends (quick_frontend): fixes a typo (listerner --> listener)
2015-02-20 22:06:13 +01:00
Goffi
1b684d2dba
quick frontends (quick widgets): doesn't force anymore "on_new_widget" to None for on_existing_widget=C.WIDGET_RECREATE: the original behaviour for on_new_widget need to be kept
2015-02-10 19:08:01 +01:00
souliane
61f1d1de6a
quick_frontend (quick_widgets): revert commit 1319
2015-02-10 10:33:54 +01:00
Goffi
662a446bb3
merges souliane commits
2015-02-09 21:40:45 +01:00
Goffi
01364793ed
quick frontends(quick app): add a listeners (observer/observable) mechanism to call a callback when a event happen. Implemented an "avatar" event.
2015-02-09 21:39:51 +01:00
Goffi
b705b5688f
frontends (quick frontend): use of new getEntitiesData to get cached values for avatars on profile connection.
2015-02-09 21:39:51 +01:00
Goffi
027ab18369
plugin xep-0054: various improvments on avatars management:
...
- avatars_cache is now managing cache load per profile
- use of new profileConnecting method to load persistent data, this prevent to have presence_available trigger called before cache data is loaded
- better management of avatars already in cache (prevent decoding avatars when it is already in cache)
2015-02-09 21:39:51 +01:00
Goffi
b00abe5dc7
core: added a "profileConnecting" method check:
...
if a plugin has a profileConnecting method, it will be called when the profile is being connected but before the client stream is started. That can be usefull if things need to be done before the communication is started: e.g. putting triggers, loading PersistentDict, etc.
2015-02-09 21:39:51 +01:00
Goffi
cdfb2c4dc6
core (memory): updateEntityData now accept a "silent" argument to avoid sending signal to frontends when updating an attribute with "signalOnUpdate" flag.
2015-02-09 21:39:51 +01:00