Commit Graph

1490 Commits

Author SHA1 Message Date
Philipp Hörist 3f03e6e0a4 Better handle disable notifitcations 2019-02-02 12:55:07 +01:00
Philipp Hörist 59b39b049a Refactor UserLocation
- Simplify modules because nbxmpp handles more stuff
2019-02-02 12:51:28 +01:00
Philipp Hörist d37b95e45e Refactor UserTune
- Simplify modules because nbxmpp handles more stuff
2019-02-02 12:51:24 +01:00
Philipp Hörist 18c422d843 Move print for debug message 2019-02-01 17:24:33 +01:00
Philipp Hörist 0b6fac44dc Dont fail on malformed pubsub events 2019-02-01 17:03:46 +01:00
Philipp Hörist b9b9dae6a0 Refactor UserActivity
- Use IconTheme for mood icons
- Simplify modules because nbxmpp handles more stuff
2019-01-31 22:57:15 +01:00
Philipp Hörist be95b04007 Refactor UserNickname and UserMood
- Use IconTheme for mood icons
- Simplify modules because nbxmpp handles more stuff
2019-01-30 23:36:01 +01:00
Philipp Hörist 8e336311cc Add annotations 2019-01-26 21:57:22 +01:00
Philipp Hörist d6b7916f2b Prevent callbacks on destroyed objects
Fixes #9560
2019-01-26 21:25:33 +01:00
Philipp Hörist e994b8f402 Count MUC members correctly
- Pass Affiliation enum to get_uf_affiliation
- Pass Role enum to get_uf_role
2019-01-26 20:40:07 +01:00
Philipp Hörist 80e5934bb5 Dont skip extension point
- If the contact has no avatar the tooltip extension point was not executed
2019-01-26 20:04:43 +01:00
Philipp Hörist ce0abb991c Add BaseModule 2019-01-26 14:34:58 +01:00
Philipp Hörist dad99f85fc Accounts: Update proxy combobox correctly 2019-01-22 22:00:20 +01:00
Philipp Hörist 1a7d930fc4 Add blocking list dialog 2019-01-21 22:45:19 +01:00
Philipp Hörist b0742377f0 Roster: remove asserts 2019-01-20 14:29:48 +01:00
Philipp Hörist 4670760668 Fix destroying a MUC
- Only close the tab if we initiated the destruction
2019-01-19 23:05:36 +01:00
Philipp Hörist 31d9b39744 Deal with stanza-id not added by a mam archive
Fixes #9550
2019-01-19 21:35:58 +01:00
Philipp Hörist 3e362874be Detect invalid user activity 2019-01-19 21:21:20 +01:00
Philipp Hörist 7c7df9d4a4 Detect invalid user mood
Fixes #9546, #9547
2019-01-19 21:21:16 +01:00
Philipp Hörist cf8eafffb2 Detect full language code
Previously we only used short language codes (en, de, fr)

- Add conversion method to rfc5646 format
2019-01-19 20:40:06 +01:00
Philipp Hörist a9994b791b Windows: Fix language detection 2019-01-19 19:41:52 +01:00
Philipp Hörist 72be14a04d Jingle Audio: Add more log output 2019-01-11 21:53:34 +01:00
Philipp Hörist b22f1baca5 Propagate presences further
Other modules like avatars and entity caps come after the base presence handlers
2019-01-11 20:45:11 +01:00
Philipp Hörist 4f2f2195aa DiscoveryWindow: Fix bookmarking a group chat
Fixes #9537
2019-01-10 23:40:08 +01:00
streaps 88439091b0 Jingle Audio: Update codecs
Fixes #9535
2019-01-10 22:28:00 +01:00
Philipp Hörist 911674d580 Fix status tray notification
Clicking on a new message notification in the status tray didnt open the chat
2019-01-10 22:08:11 +01:00
Philipp Hörist 5b1f8bcc48 Make sure args are always str 2019-01-10 22:07:52 +01:00
Philipp Hörist 418459b634 DBus: Add some logging 2019-01-10 21:50:49 +01:00
Philipp Hörist 247ee81334 Remove unused vars 2019-01-10 21:37:47 +01:00
Philipp Hörist b84054b58c DBus: Correctly raise NewMessage signal 2019-01-10 21:34:17 +01:00
Philipp Hörist dad671c1c7 Remove unused import 2019-01-07 23:52:51 +01:00
Philipp Hörist fc64bee08c Raise nbxmpp version 2019-01-07 23:45:11 +01:00
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 e308d7a210 Remove unused vars 2019-01-06 00:32:59 +01:00
Philipp Hörist eebccaf07d Remove unused import 2019-01-06 00:05:12 +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 4c17b55a91 Fix pylint error 2019-01-05 20:17:20 +01:00
Philipp Hörist 4aa265451d MUC: Use default value when printing the status 2019-01-05 20:10:08 +01:00
Philipp Hörist 7b558d692c MUC: Update menu after preference change
- Simplify action lookup
2019-01-05 19:43:11 +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
André Apitzsch 468d8bd472 Bump copyright year 2019-01-05 17:35:00 +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 4bd14bc51d Use custom link handler in AboutDialog
Fixes #9525
2019-01-04 11:56:23 +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 a7aea4cac1 Raise version to 1.1.91.1 2018-12-31 02:03:31 +01:00
Philipp Hörist 735e72c965 Plugins: Unregister StanzaHandler correctly 2018-12-31 01:58:03 +01:00
Philipp Hörist 73f3e01bdf Update actions after affiliation/role change 2018-12-30 21:27:07 +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 5a148f1657 Preferences: Connect two missing signals 2018-12-29 23:05:29 +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 94479dd7f6 Check if event was not consumed
Fixes #9096
2018-12-21 23:13:34 +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 1f975df8a4 Remove incorrect comment 2018-12-19 23:24:49 +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 56d2c6bc7e Raise nbxmpp version 2018-12-19 23:24:38 +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 89d9940933 Roster: Register our-show with lower priority
This event is used to shutdown the roster if we quit, it destroys all windows.

This should be run last because other objects like the ChatControl need a reference to the window to shutdown properly
2018-12-18 14:40:38 +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 a6b8ecf6f5 Fix error when opening sign-in/out notification 2018-12-17 15:02:40 +01:00
Philipp Hörist b449567600 Make copying text work with different layouts
This makes it possible so text can be copied from the conversation textview with other keyboard layouts than english
2018-12-17 14:49:50 +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 19b0e73f44 Fix error on key press
Fixes #9471
2018-12-16 01:01:44 +01:00
Philipp Hörist 674ec48fa2 DBus: Show correct unread message number
Fixes #8362
2018-12-15 23:59:27 +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 dac5370780 Dont draw contact after selection change
This seems to be an old codepath, currently there is no need to redraw a contact on selection change

Fixes #9496
2018-12-14 21:39:58 +01:00
Philipp Hörist 5843827abc Fix start chat menu action
Fixes #8275
2018-12-12 23:35:36 +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 4e814dabcf Fix disabled join groupchat menu
When there are no bookmarks on the server the join groupchat menu
was disabled, preventing the user to open the join groupchat dialog
2018-12-10 22:30:37 +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 293156f670 Find correct contact on private message
get_contact() returns also a contact if only the bare jid matches,
which for private messages is the groupchat contact object.
2018-12-09 00:01:18 +01:00
Philipp Hörist d129f5559a DataFormWidget: Fix some UI issues
- Textview: Wrap text, set padding
- ListMultiTreeView: Align checkboxes to the right
- Add a adjustment element that sets default sizes on the columns
- Allow two new options 'form-width' and 'left-width' to customize sizes
2018-12-06 23:06:10 +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 c2e2dd9a87 Fix MUC nick change 2018-12-04 19:43:55 +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 91ebe37359 AccountsWindow: Fix back button 2018-11-27 21:04:13 +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 cb05671254 Dont fail when importing plugin_i18n for tests 2018-11-21 21:44:19 +01:00
Philipp Hörist 35b5a4d7a9 Satisfy pylint/mypy 2018-11-20 23:06:27 +01:00
Philipp Hörist 6327679461 Refactor set_unset_urgency_hint() 2018-11-20 22:59:02 +01:00
Philipp Hörist c97fddf0f8 Move PrivateChatControl into own module 2018-11-20 22:41:43 +01:00
Philipp Hörist fa0f35da01 Fix opening links in MUC subject
The default GTK link handler does not work on Windows and Mac

Fixes #9453
2018-11-20 18:44:58 +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 b74468b9c3 Move chatstate css to default theme
This is needed so we can query the current chatstate colors in cellrenderers
2018-11-20 15:32:01 +01:00
Philipp Hörist c61bd65607 Simplify PEP module inits 2018-11-20 15:32:01 +01:00