Commit Graph

764 Commits

Author SHA1 Message Date
Philipp Hörist 4f3e4d2242 Pass xml:lang to nbxmpp 2019-01-07 23:44:51 +01:00
Philipp Hörist 5776d3de48 Chatstates: Add more log output 2019-01-06 11:23:30 +01:00
Philipp Hörist 6a958c5725 Pass contact instead of string
Fixes #9529
2019-01-06 11:10:07 +01:00
Philipp Hörist a64d986c7f Fix pylint error 2019-01-06 02:15:17 +01:00
Philipp Hörist eb99291d44 Add chat state setting per room
- Add menu option to the group chat menu for setting the chat state
- Up the paused timer to 10 seconds
- Default for group chats is composing only
2019-01-06 02:01:12 +01:00
Philipp Hörist 777b8d72e4 Remove print statement 2019-01-06 00:58:07 +01:00
Philipp Hörist 55694b60bf Dont save Gajim settings in bookmarks
- Remove print status from bookmarks
- Remove minimize on join from bookmarks
- Add options to the groupchat menu for both settings

Fixes #9463
2019-01-06 00:00:42 +01:00
Philipp Hörist 19c45510a0 MUC: Fix printing status/show
- rename config values to something more appropriate
2019-01-05 19:17:34 +01:00
Philipp Hörist 633795b7f4 Dont fail on users leaving a group chat
Fixes #9527
2019-01-05 19:17:34 +01:00
Sebastiaan Lokhorst a91f5f2c49 Fix Bonjour (pybonjour) on macOS 2019-01-05 18:37:09 +01:00
Philipp Hörist d200e94fba Better determine language cross platform 2019-01-05 16:27:11 +01:00
Philipp Hörist 4aca2eeae2 Dont send chatstates when cycling MUC nicks
- Add ability to enable/disable the whole module so it doesnt try to send chatstates when we are offline
2019-01-04 15:21:55 +01:00
Philipp Hörist 67318a49e5 Preferences: Add some default options
- Option to set default sync threshold
- Option to set default show join/leave
- Option to set default show status message change
2019-01-04 09:00:12 +01:00
Philipp Hörist 5fd1e7b4bf Remove ping timeout on disconnect handler 2019-01-04 00:49:59 +01:00
Philipp Hörist b600328639 Refactor message handlers
- Adapt to nbxmpp now unwraping MAM messages
- Use nbxmpp properties
- Save message-id to database
2019-01-04 00:11:28 +01:00
Philipp Hörist cdb37828e4 Move message error handler into message module 2019-01-03 11:52:26 +01:00
Philipp Hörist c0fb645309 Move MUC message logging into message module 2019-01-03 11:25:45 +01:00
Philipp Hörist 4631f50372 Remove unused code 2019-01-03 10:46:31 +01:00
Philipp Hörist eb9f340a03 Remove star imports 2019-01-03 10:41:22 +01:00
Philipp Hörist b05f0e1458 Move methods into Connection class 2019-01-03 10:19:53 +01:00
Philipp Hörist 0441ccd4e9 Move 'agent-removed' handler into Gateway module 2019-01-03 10:19:29 +01:00
Philipp Hörist f3d5babc65 Register handlers in CommonConnection class 2019-01-03 10:19:25 +01:00
Philipp Hörist 1399c41d59 Remove old dbus module
We now use Gio DBus
2019-01-03 09:06:49 +01:00
Philipp Hörist 371756c2a5 Remove unnecessary event classes 2019-01-03 09:06:44 +01:00
Philipp Hörist fcb33a10e7 Add missing get_instance() for Gateway/IQ module 2019-01-03 01:00:31 +01:00
Philipp Hörist d1ccfd515a MUC: Dont check for unique room id support
This feature was remove from XEP-0045 in Version 1.25 (2012-02-08). We simply now use an uuid instead.
2019-01-03 00:50:22 +01:00
Philipp Hörist d622439a44 Remove unused code 2019-01-03 00:50:00 +01:00
Philipp Hörist 9ae6654dd3 Add IQ and Gateway module 2019-01-03 00:19:23 +01:00
Philipp Hörist d93fe8b1ea HTTPAuth: Use nbxmpp handlers 2019-01-02 16:53:06 +01:00
Philipp Hörist d121bbf4ab Refactor Zeroconf presence 2019-01-02 16:10:30 +01:00
Philipp Hörist b37c578504 Fix tests
- Fix more pylint errors
- Move caps test for now to broken
2019-01-02 02:27:38 +01:00
Philipp Hörist 0fcf90f8d5 Fix pylint errors 2019-01-02 02:16:42 +01:00
Philipp Hörist f2beea0df3 Refactor Caps module 2019-01-02 02:04:54 +01:00
Philipp Hörist a289ad5f60 Refactor Presence
- Remove option to hide self contacts for now. This makes the code less
complicated.
- Move as much code as possible into the presence module
- Use nbxmpp properties
2019-01-02 02:04:42 +01:00
Philipp Hörist 608607b721 Remove old PEP code 2018-12-31 10:54:51 +01:00
Philipp Hörist d06b73d7c6 Rename some muc events 2018-12-30 21:18:17 +01:00
Philipp Hörist d203d36f07 Remove debug code 2018-12-30 20:44:59 +01:00
Philipp Hörist 0ad369dc97 Refactor MUC Presence
- Use nbxmpp properties
- Split into multiple events
- Add new options in the group chat menu for print settings
2018-12-30 20:06:59 +01:00
Philipp Hörist 79684d90d5 Simplify vcard avatar code
- Use nbxmpp properties
2018-12-28 13:38:15 +01:00
Philipp Hörist 34306921ed Correctly parse delay in groupchats 2018-12-28 11:54:54 +01:00
Philipp Hörist 8094cadbea Refactor MUC module
- nbxmpp provides now most of the MUC code
2018-12-27 22:13:35 +01:00
Philipp Hörist c63e32634a Adapt Zeroconf to nbxmpp changes
Fixes #9503
2018-12-23 22:33:10 +01:00
Philipp Hörist 43f210bbaa Remove unused code 2018-12-21 19:33:34 +01:00
Philipp Hörist 0e6011c088 Ignore bookmark updates from other jids
Because we use +notify to subscribe to the bookmarks node, we get notifications from contacts that have an open access bookmarks node
2018-12-21 19:10:18 +01:00
Philipp Hörist 4503f466d6 Simplify gc-message-received event 2018-12-21 18:36:09 +01:00
Philipp Hörist 40fc727156 Remove unused code 2018-12-21 14:13:08 +01:00
Philipp Hörist 85e79e7b27 Use nbxmpp properties for HTTPAuth
nbxmpp implements HTTPAuth now, so we dont need to parse it anymore
2018-12-21 12:23:26 +01:00
Philipp Hörist 42c1909d3b Remove carbon processing
nbxmpp does that now for us
2018-12-20 23:18:23 +01:00
Philipp Hörist c614ac69df Refactor voice approval 2018-12-19 23:24:44 +01:00
Philipp Hörist 8b5adb06da Allow setting handler priority 2018-12-19 23:24:39 +01:00
Philipp Hörist ce6839957d Catch mediated invites only if type is normal
https://xmpp.org/extensions/xep-0045.html#invite-mediated
2018-12-19 23:00:56 +01:00
Philipp Hörist 5f555193c7 Send active instead of gone as last chatstate
- Also attempt to fix #9446
2018-12-19 23:00:56 +01:00
Philipp Hörist e9f4c5050e Refactor MUC captcha challenge code 2018-12-19 23:00:50 +01:00
Philipp Hörist 1fec6681cd Move MUC config change handling into MUC module
- Remove status conditions code, since the XEP made a namespace bump to :1 and is now backwards compatible its useless
- XEP-0045 mentions status code 100 can be in messages but there is no case given where this would ever happen, so its removed from message handling
2018-12-19 23:00:09 +01:00
Philipp Hörist b935ce7096 Add more log output when calling handlers 2018-12-19 02:18:12 +01:00
Philipp Hörist 99cfb8f629 Cleanup Gajims disco features 2018-12-19 00:11:24 +01:00
Philipp Hörist de4cd80b83 Make namedtuple local 2018-12-18 22:52:29 +01:00
Philipp Hörist ced387e719 Remove legacy code 2018-12-18 22:49:07 +01:00
Philipp Hörist 7286f4286f Add feature-discovered event
This lets us move more GUI code out of the common module
2018-12-18 22:41:06 +01:00
Philipp Hörist 0ac52a390e Allow handlers list to be modifed while iterating 2018-12-18 14:08:27 +01:00
Philipp Hörist 841f12f75b Fix mypy errors 2018-12-17 00:41:46 +01:00
Philipp Hörist 96edd79963 Handle PEP bookmarks notifications
- Handle PEP bookmark notifications
- On new bookmarks with the auto join flag set, join the MUC
- Dont merge private and pubsub bookmarks
- Only use pubsub if the conversion feature is announced
2018-12-17 00:36:45 +01:00
Philipp Hörist 760645f5c3 Improve MUC notifications
- Play sound for received messages, if notify for all messages is activated
- Send system notifications on MUC messages
- Make notify for all the default in private MUCs

Fixes #9383
2018-12-15 23:37:44 +01:00
Philipp Hörist be420d44fc Implement XEP-0411 Bookmarks Conversion
If bookmarks conversion is announced by the server:

- Dont merge bookmarks
- Only push to either private storage or pubsub
2018-12-10 22:30:45 +01:00
Philipp Hörist 6e30d3af64 Adapt to nbxmpp API changes
- Remove support for OAUTH2
- Remove insecure password dialog, its impossible now that a user can connect plain by mistake
- Refactor requesting the password
- Add possibility to delete passwords
2018-12-09 18:48:44 +01:00
Philipp Hörist b8863e82be MUC: Identify subject change correctly
Fixes #9491
2018-12-09 00:29:20 +01:00
Philipp Hörist ace1113d02 Fix pylint errors 2018-12-05 21:40:12 +01:00
Philipp Hörist a979874fa1 Sort imports 2018-12-05 17:05:29 +01:00
Philipp Hörist e419f75217 Remove unused imports 2018-12-05 17:05:10 +01:00
Philipp Hörist 4968fe39e2 Correctly remove ping timeout
Fixes #9481
2018-12-05 17:03:34 +01:00
Philipp Hörist 62253c804a Discover the bookmarks conversion server feature 2018-12-04 20:41:44 +01:00
Philipp Hörist 86bbdd21fd Encode resource with correct profile
Fixes #9465
2018-12-04 19:43:13 +01:00
Philipp Hörist 932377f533 Remove unused event 2018-12-04 19:32:13 +01:00
Philipp Hörist 700666b820 Refactor send timeouts
Fixes #9459
2018-12-04 19:29:32 +01:00
Philipp Hörist 78f439c611 Refactor disconnect code
Fixes #9467
2018-12-04 19:28:50 +01:00
Philipp Hörist 59855a6c8d Determine delay timestamp correctly
- Check the from attr on the delay node to determine if its a user timestamp or from the server
- Dont use user timestamp for sorting
- Record the user timestamp in additional data so its saved to the database

Fixes #9444
2018-12-04 12:18:17 +01:00
Philipp Hörist fd6dec1208 Handle presence without from attr correctly
Fixes #9472
2018-12-03 15:40:43 +01:00
Philipp Hörist 1d11e06647 Fix error when creating MUC
Fixes #9473
2018-12-03 14:17:46 +01:00
Philipp Hörist 3f2e3c6bb2 Better handle not available keyring backends 2018-12-01 21:46:58 +01:00
Philipp Hörist 432a4edbc1 Use custom dict for additional data
This makes it easier to retrive and store values
2018-11-30 23:05:15 +01:00
Philipp Hörist f1ab9fb683 Fix connection resume
Fixes #9458
2018-11-27 19:23:34 +01:00
Andrey Gursky f942e2c70f Fix receipts for chat
This is a regression from e3050697
2018-11-27 02:17:25 +01:00
Philipp Hörist 5fa56684c7 Adapt to nbxmpp API changes 2018-11-25 20:02:20 +01:00
Philipp Hörist c8b5eb94a9 Remove unused imports 2018-11-20 16:16:30 +01:00
Philipp Hörist 15c3de2b4d Add option to show chatstate in roster
- Preferences: Add options for display in banner, tab, roster
- This makes the chatstate Plugin obsolete
2018-11-20 15:32:01 +01:00
Philipp Hörist c61bd65607 Simplify PEP module inits 2018-11-20 15:32:01 +01:00
Philipp Hörist e305069798 Fix receipts for MUC-PMs 2018-11-19 19:33:28 +01:00
Philipp Hörist b5bd5f15f0 Dont check mam:2 compliance for error messages 2018-11-19 18:04:32 +01:00
Philipp Hörist 1504805575 Dont answer groupchat receipt requests 2018-11-19 17:51:18 +01:00
Philipp Hörist 3ba34fa396 Remove old iconset code 2018-11-18 22:24:32 +01:00
Philipp Hörist acc89ad622 Roster: Use icons from IconTheme for Roster
With this Gajim loses the ability to draw animated GIFs in the Roster

GIFs have numerous drawbacks:

- We cant add them to the IconTheme, which means we need a different interface to load them
- The IconTheme scales all icons we load for the current scale (HiDPI)
- The animation causes many updates to the Roster, and causes high cpu usage

Fixes #8814, #8655
2018-11-18 22:24:10 +01:00
Philipp Hörist d13baed80f Improve Entity Time parsing
- Use parse_datetime()
- Improve tzo node validation
2018-11-18 10:35:13 +01:00
Philipp Hörist f40f171ecd Refactor parse_datetime and add unit test 2018-11-18 10:35:13 +01:00
Philipp Hörist 7f1dfe5a8c New DataFormWidget: Add Captcha support 2018-11-15 21:02:09 +01:00
Bronko 4be4998704 fix typos in config.py 2018-11-14 22:44:41 +01:00
Philipp Hörist 9e24c72ba5 Fix incorrect contact status on tabs 2018-11-13 23:47:54 +01:00
Philipp Hörist e509a68139 Determine absolut path for custom config folder
When a relative custom config path is passed via commandline, the logic
which decides if a plugin can be deleted from the plugin manager fails
2018-11-11 15:15:10 +01:00
Philipp Hörist 62b210a9e5 Pass account to plugins when encrypting a file 2018-11-11 10:40:48 +01:00
Philipp Hörist e4a9ffe1ca Dont test for sys.platform == 'linux'
This excludes other unix systems which was not intended
2018-11-10 19:30:19 +01:00
Philipp Hörist 02a9615b94 Dont test if precis_i18n is available
Its listed as dependency
2018-11-10 19:30:19 +01:00