Commit graph

1,770 commits

Author SHA1 Message Date
Goffi
b2bb3ed564 plugin text commands: added _contextValid method:
- _contextValid check if a method can be called in this context, according to docstring declaration
    - use it to parse results in /help command
    - use it avoid use of command in wrong context, and help message is sent in this case
2015-03-19 14:29:03 +01:00
Goffi
c4cd6fd5f3 plugin text commands: docstring parsing for commands, and better /help command:
- docstring are parsed according to http://wiki.goffi.org/wiki/Coding_style/en#Text_commands, a data dictionary is filled accordingly
    - /help command can now show detailed help for a specific command
2015-03-19 14:02:37 +01:00
Goffi
6760c927d3 merged branch frontends_multi_profiles 2015-03-18 10:52:28 +01:00
Goffi
07a94da3de quick_frontends(menus): added MenuContainer.replace method + addMenuHook helper method in QuickMenusManager 2015-03-18 10:39:22 +01:00
Goffi
80e65d5b84 core, quick_frontends: added an "extra" item in getMenus + use of new quick_menus module in QuickApp 2015-03-17 19:33:05 +01:00
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