Commit graph libervia-backend/sat_frontends/primitivus
Author SHA1 Message Date
Goffi
e1a44cf4e4 fixed shebangs 2020-01-29 10:07:00 +01:00
Goffi
a39349fe64 dates update 2020-01-29 09:50:54 +01:00
Goffi
efe52d755d plugin XEP-0045: added room statuses to metadata:
room statuses are now sent with other metadata on bridge signals, and saved in Room
instance. They give useful data on the room, for instance they can be used to know if a
full jid is used in this room.
2019-12-30 20:44:02 +01:00
Goffi
fbfe96c505 Python 3 port:
/!\ this is a huge commit
/!\ starting from this commit, SàT is needs Python 3.6+
/!\ SàT maybe be instable or some feature may not work anymore, this will improve with time

This patch port backend, bridge and frontends to Python 3.

Roughly this has been done this way:

- 2to3 tools has been applied (with python 3.7)
- all references to python2 have been replaced with python3 (notably shebangs)
- fixed files not handled by 2to3 (notably the shell script)
- several manual fixes
- fixed issues reported by Python 3 that where not handled in Python 2
- replaced "async" with "async_" when needed (it's a reserved word from Python 3.7)
- replaced zope's "implements" with @implementer decorator
- temporary hack to handle data pickled in database, as str or bytes may be returned,
  to be checked later
- fixed hash comparison for password
- removed some code which is not needed anymore with Python 3
- deactivated some code which needs to be checked (notably certificate validation)
- tested with jp, fixed reported issues until some basic commands worked
- ported Primitivus (after porting dependencies like urwid satext)
- more manual fixes
2019-08-13 19:08:41 +02:00
Goffi
d2064fc175 core: fixed handling of button callback in popups:
Button use themselve as callback, and this was causing troubles in the removePopUp method.
This patch work around this by considering a Button widget in the same way as None (we
never use Button directly in popups).

fix 183
2019-07-19 23:04:35 +02:00
Goffi
1c862e7c3f primitivus: fixed status popup's cancel button
fix 329
2019-07-17 09:28:34 +02:00
Goffi
3b21a727dd primitivus: better popup sizing:
- showPopUp now takes absolute height and width, this makes more sense than the relative
  ones used before
- if height or width is not set, a default is used which depend of the type of the widget
  (it's smaller if the widget is a note)
- size is set to a low value for widget alerts
- size is bigger else

fix 324
2019-07-14 20:42:14 +02:00
Goffi
8fc78a71f0 primitivus: select the widget even if an other one is selected when the selection comes from an user action:
new `user_action` arguments has been added to newWidget to specify when the new widget
comes from a direct user action.
2019-07-14 20:38:34 +02:00
Goffi
7459275a68 primitivus: don't focus on new widget if one is already selected:
new widgets were getting focus even when one was already selected.

fix 326
2019-07-14 11:23:23 +02:00
Goffi
90fcacd4bd primitivus (contact list): fixed notifications counter for mentions:
notifications counter was not properly counting mentions and was not changing colour as
expected, this patch fixes this and changed colour to the more readable light red when not focused.

fixes 319
2019-07-08 19:11:29 +02:00
Goffi
48173b1961 primitivus (chat): don't show minor notifications (all but mentions) when printing history
fix 316
2019-07-08 09:20:06 +02:00
Goffi
31a9e2bd09 quick frontend (chat), primitivus(chat): properly clear occupants on resync:
occupants widgets were not cleared in Primitivus on resync while occupants dictionary was, resulting in nicknames sometimes apearing doubled in Primitivus MUC rooms.

A new occupantsClear method has been added in QuickChat, so it can be overriden by frontends to clear widgets or other representations of occupants.

fix 304
2019-07-06 12:22:25 +02:00
Goffi
4a0d1701fc primitivus (chat): fixed crash when removing focus_marker after a :search or :history command 2019-04-10 21:07:47 +02:00
Goffi
29bb633914 primitivus: don't call chatStateComposing when host is out of sync:
if host is out of sync, that means that server is not connected and it makes no sense to call this method. Furthermore, this was resulting in a crash because profile is not found.
2019-04-07 21:09:51 +02:00
Goffi
47bd1495df primitivus (chat): use the factorised code for user moved info messages. 2019-03-28 08:40:38 +01:00
Goffi
8e338bf913 date update 2019-01-12 12:25:31 +01:00
Goffi
7a9ee35cfc misc: replaced all "dummy" by the more conventional and readable "__" ("_" being used for gettext) 2019-01-11 11:13:15 +01:00
Goffi
24c4cc0487 frontends (XMLUI): TabsContainer can now be the main container (Primitivus keep the old behaviour and always use VerticalContainer as main container) 2019-01-02 18:32:16 +01:00
Goffi
c2a1ba3793 core (xmpp): don't send message without message or subject to bridge (and log a warning in frontends if such a message is received) 2019-01-02 18:28:30 +01:00
Goffi
744cb0c503 code style reformatting using black 2018-06-27 20:14:46 +02:00
Goffi
519451bd84 quick_frontend(contact list): refactored update:
update is now called with appropriate constant value (C.UPDATE_ADD, C.UPDATE_DELETE, C.UPDATE_MODIFY and so on) when a widget change visibility according to current options.
Before it was linked to cache only (C.UPDATE_ADD was only called when contact was first added to cache).
This make widget handling in frontends more easy.

Renamed entityToShow to entityVisible, which seems to correspond better.

Started reducing lines lenght to 90 chars as a test. May become the new coding style soon.
2018-06-24 21:59:29 +02:00
Goffi
d1aca28954 primitivus (xmlui): fixed XMLUIPanel signature 2018-04-07 14:07:05 +02:00
Goffi
80ef13612b core, setup: huge cleaning:
- moved directories from src and frontends/src to sat and sat_frontends, which is the recommanded naming convention
- move twisted directory to root
- removed all hacks from setup.py, and added missing dependencies, it is now clean
- use https URL for website in setup.py
- removed "Environment :: X11 Applications :: GTK", as wix is deprecated and removed
- renamed sat.sh to sat and fixed its installation
- added python_requires to specify Python version needed
- replaced glib2reactor which use deprecated code by gtk3reactor

sat can now be installed directly from virtualenv without using --system-site-packages anymore \o/
2018-04-02 19:44:50 +02:00