Commit graph libervia-backend/frontends/src/primitivus
Author SHA1 Message Date
Goffi
2a3b5ad8e3 primitivus: partly reverted commit 641cfd2faefe :
- showDialog is actually still used and useful
    - updated the code to use the widget argument in removePopup
2015-11-13 16:45:56 +01:00
Goffi
73139e59ba Primitivus: better popups handling:
- widget to remove can now be specified in removePopUp: if it is not the current one, it will be removed from queue
    - Primitivus.Alert method is a shortcut to display an Alert which will be removed on "OK" press
    - showDialog is now obsolete and removed, if generic dialog creation is needed, XMLUI can be used
2015-11-11 18:32:59 +01:00
Goffi
719a624892 quick_frontend, primitivus (xmlui): removed _xmluiClose from workflow were submit is triggered, as submit launch the callback which close the dialog itself + fixed dialogs _xmluiClose 2015-11-11 18:29:32 +01:00
Goffi
db35bfb674 primitivus (XMLUI): manage message in FileDialog /!\ Urwid SàText need to be updated /!\ 2015-09-25 19:19:12 +02:00
Goffi
dd8462f07a frontends: callback are now always used in QuickApp launchAction (before it was only used if validated is present):
- actionManager is used by default (no callback provided)
    - in XMLUI, the dialog is closed before calling actionManager
    - if keys are not managed in resuling data, an exceptions is raised
2015-08-25 14:41:42 +02:00
Goffi
fcb658ff2d primitivus (ProfileManager): fixed profile change event callback 2015-08-25 14:22:21 +02:00
souliane
a90bcacfe9 tools, frontends (xmlui): allow to select a tab when adding it 2015-08-21 14:17:41 +02:00
Goffi
1fde823a9c primivitus: fixed profile manager exception when nothing is focused 2015-08-20 18:41:06 +02:00
Goffi
9df7cd6d33 frontends, primitivus: JidsList XMLUI widget management /!\ urwid SàText must be updated 2015-08-20 18:36:53 +02:00
Goffi
7f14e1865d core , privmitivus (xmlui): add jidInput handling, with a simple String for now 2015-08-18 10:35:44 +02:00
Goffi
3312c3bf97 quick_frontend, primitivus: handling of actionNew signal 2015-08-18 09:01:18 +02:00
souliane
e10070f923 primitivus: fix setting the presence and status 2015-06-10 09:18:34 +02:00
souliane
41b549f7ae core, plugin XEP-0045, frontends: change frontend method "setStatusOnline" for "setPresenceStatus":
- remove parameter "online" (can be guess from "presence" value)
    - process "statuses" dict in quick_frontend, so this method can get a simple unicode "status"
    - add C.PRESENCE_STATUSES_DEFAULT to define the key to use for fallback status
2015-04-20 16:39:38 +02:00
souliane
2203e6aa52 quick_frontend, primitivus: fixes a couple of issues:
- chat: notification was raising an error when you just entered the room and self.nick is None
    - quick_widget: deleting a widget was modifying a dict while looping on it + unselect widget when it's being deleted
2015-04-16 17:17:28 +02:00
souliane
67ff77e5de massive (preventive) addition of 'u' (unicode) before the strings passed to logging functions 2015-04-16 14:57:57 +02:00
souliane
cc829beac7 quick_frontend, primitivus: move code to remove a new message alert from primitivus to quick_frontend 2015-04-16 13:31:14 +02:00
souliane
bf04fcf780 plugin XEP-0045, quick_frontend, primitivus: replace C.DEFAULT_MUC by bridge method getDefaultMUC (value is defined in plugin XEP-0045 and can be overriden with the config file) 2015-04-09 11:27:13 +02:00
souliane
de9c656e3b primitivus: fixes :search command 2015-04-09 11:24:25 +02:00
Goffi
fbec02d396 2015 copyright dates update 2015-03-30 10:26:26 +02:00
souliane
ff0166e95f quick_frontend, primitivus: various fixes (MUC and cached signals):
- actually call the cached signals, everything was there but the call was not done
    - display '[]' instead of '[None]' when group message coming from the room (no resource)
    - catch the exception when trying to delete an occupant who's not in the room
    - do not cache a "main resource" for MUC entities
2015-03-25 15:25:51 +01:00
souliane
30f1169e22 primitivus (Chat): fixes updating the occupant list when someone leaves, changes his nick or is added in last position 2015-03-25 10:09:59 +01:00
souliane
e81c92c549 quick_frontend, primivitus: revert changes made in rev 1386 (1f3513cfb246) concerning ChatText.nick: was mixing MUC occupant nick and roster contact nick/node 2015-03-25 09:42:05 +01:00
souliane
78f14091b1 quick_frontend, primitivus: remove QuickChat.updateEntityState and QuickChat.setContactStates, use more general QuickChat.update (also called when joining the room to initialise the occupants list) 2015-03-24 17:31:08 +01:00
souliane
1a03845539 primitivus (contact_list): fixes hide/show disconnected contacts via keyboard shortcut 2015-03-24 10:46:42 +01:00
souliane
5c1fe63580 quick_frontend, primivitus: remove QuickChat.getUserNick + primivitus ChatText gets the user nick directly from parent Chat instance 2015-03-23 15:38:32 +01:00
souliane
294b42f15c primitivus: prefill "Join MUC" dialog with only the JID's node part when in debug version + display error directly from the DBus object 2015-03-24 07:38:40 +01:00
souliane
83af62d142 quick_frontend, primitivus (chat): merge setOccupantStates and setContactStates 2015-03-23 09:34:23 +01:00
souliane
6dc8b211bf quick_frontend, primitivus: better PEP-8 compliance + remove/rename some (Quick)Chat attributes:
- remove QuickChat.id, use QuickChat.target instead
    - rename Chat.present_panel to Chat.occupants_panel
    - rename Chat.present_wid to Chat.occupants_list
2015-03-22 14:20:19 +01:00
souliane
14f4b4b8ec quick_frontends, primitivus: move the chat states logic to quick_frontend 2015-03-20 16:28:19 +01:00
souliane
c6419871ac quick_frontends, primitivus: know who are the MUC occupants from the presence informations:
- QuickChat.occupants is now a property using cached information
    - some MUC handlers are no more needed, the presence handler is enough
2015-03-20 16:25:38 +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
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
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
3a35a5590d frontends (primitivus): fixes MUC nicks completion 2015-03-04 14:04:03 +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
Goffi
90b4969e39 primitivus (contact list): removed our own bare jid from not_in_roster 2015-02-24 18:21:03 +01:00
Goffi
8f5b116211 quick_frontends, primitivus (contact list): added nick observer + implemented onNickUpdate 2015-02-24 17:14:10 +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
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
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
9461ac75ce frontends: merge sat_frontends.constants to sat_frontends.quick_frontend.constants 2015-02-22 14:13:42 +01:00
souliane
4c7e81ad6c quick_frontend, primitivus: fixes typo between method alert and class Alert 2015-02-21 12:34:48 +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
1b0d6ecc30 quick_frontend, primitivus: moved parts of primitivus's profileManager to quick_frontend 2015-01-24 00:14: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
souliane
cf106bde77 primitivus: fixes displaying online contacts when "Show offline contacts" is False 2014-10-07 11:45:34 +02:00
souliane
c850615a2d primitivus: implement parameter "Show empty groups" 2014-10-06 13:54:41 +02:00