Commit graph

607 commits

Author SHA1 Message Date
Marco Sirabella
d3f37d059c
Transition to buffer.number setter 2019-11-22 18:35:20 -05:00
Marco Sirabella
a6b955f4c7
Implement NEAR_SERVER for new_channel_position 2019-11-22 18:33:04 -05:00
Marco Sirabella
56aa9992a9
Implement none and next functionality for new_channel_position 2019-11-19 20:59:57 -05:00
Marco Sirabella
56e6781abe
Add new_channel_position option (with no functionality) 2019-11-19 20:53:05 -05:00
Joel Lehtonen
1fe0215e44 Some Telegram bridges use "_telegram" prefix instead of plain "telegram" 2019-11-11 14:40:18 +02:00
Julius Michaelis
69ad2a9c03 Add options for controlling reconnect delay growth 2019-11-10 23:35:44 +09:00
Rex Roni
a1abfdc3d6 Restore mypy support.
Fix errors with `make typecheck` and fix some typos.
2019-11-03 17:02:48 -07:00
Rex Roni
368f5cfc3b Fix bug when requeueing messages for encryption.
This probably fixes #79.
2019-11-03 16:59:44 -07:00
Damir Jelić
a9d6864f3a uploads: Fix a typo. 2019-10-20 13:31:52 +02:00
Damir Jelić
355fa95533 server: Add a config option to set the SSO helper listening port. 2019-09-17 19:37:22 +02:00
Damir Jelić
ba943ec58f commans: Fix the page up command on an empty buffer. 2019-09-11 21:05:59 +02:00
Damir Jelić
64712a9e74 weechat-matrix: Use unicode literals in the message renderer. 2019-09-11 20:30:58 +02:00
Damir Jelić
e5f6b597af weechat-matrix: Fetch from the backlog if the buffer has < 10 lines at startup. 2019-09-11 13:48:10 +02:00
Damir Jelić
f48a69a6b6 buffer: Check for already printed events while fetching the backlog. 2019-09-11 13:26:59 +02:00
Damir Jelić
5924264139 commands: Change the way the redact command parses it's arguments.
This fixes #104.
2019-09-11 12:24:12 +02:00
Damir Jelić
a58d21710b server: Add a missing return in the case of an already logged in server. 2019-09-11 08:54:47 +02:00
Damir Jelić
674d5e56b5 server: Use a flag to remember if it's our first sync. 2019-09-11 08:54:23 +02:00
Damir Jelić
aec7023e25 buffer: Force member loading if we're printing from the backlog as well. 2019-09-10 23:23:57 +02:00
Damir Jelić
0acd3d7dc9 buffer: Fix the formatting of room encryption events. 2019-09-10 23:04:48 +02:00
Damir Jelić
3e24e0e999 buffer: The redact_line method doesn't take tags as an argument. 2019-09-10 22:42:32 +02:00
Damir Jelić
488fa29232 buffer: Add the ability to print more message types from the backlog. 2019-09-10 22:16:51 +02:00
Damir Jelić
27c81afcb7 buffer: Start to refactor out the message formatting. 2019-09-10 22:12:23 +02:00
Damir Jelić
23509301a3 server: Evaluate all the server string options.
This fixes #115.
2019-09-10 20:36:11 +02:00
Damir Jelić
eee63decb1 weechat-matrix: Store/restore sync tokens. 2019-09-10 18:51:58 +02:00
Damir Jelić
3080538549 weechat-matrix: Add support for single sign-on.
This patch adds support for the single sign-on login flow. If no
user/password is set Weechat will do a SSO login attempt.
2019-09-10 15:28:55 +02:00
Damir Jelić
cc0ccd6dba commands: Allow servers to be added using the full URL. 2019-09-10 15:27:34 +02:00
Damir Jelić
dc34a5bef9 weechat-matrix: Handle the case where our clients gets soft-logged out. 2019-09-10 15:26:54 +02:00
Damir Jelić
2aa70c7ead commands: Fix the server delete command. 2019-09-10 14:57:50 +02:00
Damir Jelić
a37ca2f4b7 buffer: Move the room name logic from nio into weechat-matrix. 2019-09-04 18:33:07 +02:00
Damir Jelić
934863e209 buffer: Change the way the domain localvar is set.
Room ids in newer room versions will become opaque strings and won't
contain the domain of the homeserver.

Get the domain from the homeserver url instead.
2019-07-02 18:11:28 +02:00
Damir Jelić
e9214862fe buffer: Pass the homeserver to the mxc -> http api function.
This fixes #57.
2019-07-02 18:10:35 +02:00
Damir Jelić
4c04f6319b buffer: Store the homeserver inside room buffers. 2019-07-02 18:10:12 +02:00
Damir Jelić
4c8ee2848b server: Change the way the homeserver url is passed to nio. 2019-07-02 18:09:36 +02:00
Damir Jelić
f05d2f0a2b server: Enable sending state events to encrypted rooms.
State events are not encrypted so sending them is done as usually.
2019-06-27 17:32:39 +02:00
Damir Jelić
6836365bc7 commands: Add the ability to print out ignored devices. 2019-06-27 11:58:22 +02:00
Damir Jelić
137102bb09 Merge branch 'kechpaja-master' 2019-06-27 11:58:11 +02:00
Damir Jelić
e9b82a56f5 commands: Add a send-anyways command. 2019-06-27 11:48:28 +02:00
Damir Jelić
b2877b0f71 buffer: Clear the buffer last message if we succeed in sending it. 2019-06-27 11:48:01 +02:00
Damir Jelić
7ad0893a3f buffer: Make the resending -> ignore devices logic a configurable option. 2019-06-26 23:07:08 +02:00
Damir Jelić
563cf9926c buffer: Allow to ignore devices by sending the same message twice. 2019-06-26 17:53:26 +02:00
Damir Jelić
c16dc70768 Merge branch 'sas' 2019-05-25 11:40:13 +02:00
Kelvin Jackson
730c493a3d Added 'ignore' subcommand to /olm command
/olm ignore should now invoke the "ignore" function in the NIO class.
2019-05-18 19:03:53 +03:00
Damir Jelić
fa5dca12de commands: Print out device display names. 2019-05-15 21:50:48 +02:00
Trygve Aaberge
b136153d34 Use nicklist_visible_count for buffer_nicklist_count bar item
This is the value which is used by default as per
https://github.com/weechat/weechat/blob/v2.4/src/gui/gui-bar-item.c#L1262
2019-05-15 00:48:09 +02:00
Trygve Aaberge
b5cf65dfd2 Set correct color for buffer_nicklist_count bar item 2019-05-15 00:39:40 +02:00
Trygve Aaberge
aef9a2e028 Only use buffer name for buffer_name bar item
The logic that was here is only relevant for the irc plugin, and should
not be included. The default value for the buffers from other plugins
just contains the color and name, as seen at
https://github.com/weechat/weechat/blob/v2.4/src/gui/gui-bar-item.c#L1112-L1141

Fixes a part of #54
2019-05-15 00:39:27 +02:00
Damir Jelić
53f1edf63a server: Highlight room invitation messages. 2019-05-07 22:32:45 +02:00
Damir Jelić
c3b3567e61 server: Show KeyVerificationCancel events. 2019-05-07 22:32:22 +02:00
Damir Jelić
9d6fbe14cd server: Don't try to show a short auth string if the SAS object is canceled. 2019-05-07 22:31:56 +02:00
Damir Jelić
f294ae5e68 commands: Allow key verifications to be cancelled. 2019-05-07 22:23:16 +02:00
Damir Jelić
810a95edf0 server: Change the Sas confirmation function. 2019-05-07 22:22:45 +02:00
Damir Jelić
88a2de637d commands: Fix an error message. 2019-05-07 22:18:21 +02:00
Damir Jelić
9f01a05617 commands: Add a command for interactive key verification. 2019-05-05 23:23:14 +02:00
Damir Jelić
38fa6d4063 server: Change the way to-device messages are sent. 2019-04-30 18:15:07 +02:00
Denis Kasak
31d9052b88 Fixup. 2019-04-30 17:26:10 +02:00
Denis Kasak
31c38bc01d sas: Center emojis above their description properly. 2019-04-30 17:26:10 +02:00
Damir Jelić
c32a9e34e6 server: More SAS work. 2019-04-30 17:26:10 +02:00
Damir Jelić
ed1b16a4e2 [WIP]: SAS support. 2019-04-30 17:26:10 +02:00
Damir Jelić
c1cfc4a8e4 server: Clear request flags when we disconnect.
The server class has a bunch of request flags that remember if a request
of a certain type is in flight, this prevents making the same request
multiple times. The flags are cleared when we get a response but not
when we disconnect.

If we disconnect from the server while waiting on a response the
response will be lost and the flag won't be cleared, this will prevent
us from making any request of that type.

Most notably key queries can end up being disabled so new devices won't
be recognized anymore.
2019-04-25 17:54:48 +02:00
Florian Bruhin
5431c8a310
Fix /matrix server delete example 2019-04-16 08:35:57 +02:00
Damir Jelić
a30482a88c Merge branch 'user-id-special-case' 2019-04-05 21:34:29 +02:00
Thomas
db8bc325b4
Add shortname for twilio, telegram, messenger bridge 2019-04-06 00:57:47 +05:30
Damir Jelić
85ee2eec52 server: Handle room send errors. 2019-03-26 18:11:42 +01:00
Damir Jelić
c400404e3d server: Unstuck the group session shared flag.
The group session shared flag could be stuck in a permanent True state
if we try to share a group session comming from a key claim response in
the case that we have unverified devices.
2019-03-26 18:09:54 +01:00
Damir Jelić
c02fa75d4f buffer: Handle bad events better. 2019-03-13 15:25:22 +01:00
Damir Jelić
1b54b67154 buffer: Add more bridged username workarounds. 2019-03-11 16:26:29 +01:00
Damir Jelić
e9e61b04da buffer: Add user name hacks for ircnet and whatsapp users.
This closes #59.
2019-03-08 19:31:12 +01:00
Damir Jelić
75b2b85626 completion: Add a room name completion.
This is meant to be used as another default_template for the global
weechat completion.
2019-03-07 10:06:46 +01:00
Damir Jelić
6ddf63093a config: Improve the help for the humman_buffer_names option. 2019-03-06 17:40:01 +01:00
Damir Jelić
ef51c95a08 buffer: Allow the buffer name to be human readable. 2019-03-06 16:25:21 +01:00
Damir Jelić
01b5d5c1c5 matrix: Allow buffers to be switched by short names.
This patch overrides the /buffer command and modifies it so we can
switch to matrix buffers by their short name.
2019-02-26 16:08:39 +01:00
Damir Jelić
12bf9c85c4 bar_items: Return sane defaults if we're not on our own buffer. 2019-02-22 09:29:42 +01:00
Damir Jelić
01a23e8221 uploads: Add support for encrypted uploads. 2019-02-17 22:45:49 +01:00
Damir Jelić
6a1901c0ac server: Fix encryption queue emptying. 2019-02-12 11:59:53 +01:00
Damir Jelić
e4a2e2df88 server: Mark that we have sent out a key share request after a KeyClaimResponse. 2019-02-12 11:59:19 +01:00
Damir Jelić
71ffee9036 commands: Pass the whole address to the upload helper. 2019-02-04 11:03:50 +01:00
Damir Jelić
c680939005 server: Use the extra_path functionality from nio. 2019-02-04 10:42:03 +01:00
Damir Jelić
b884536e7e server: Don't use the address in the config for connection establishment.
The address in the config can contain subpaths and it doesn't make sense
for a socket to connect to this address. The net location without the
subpath is now contained in server.address.
2019-02-03 22:56:10 +01:00
Damir Jelić
107a7a606e server: Allow a server address with a subpath. 2019-02-03 10:21:59 +01:00
Damir Jelić
54ad615431 commands: Catch an OSErrors for key imports/exports as well. 2019-02-01 21:08:46 +01:00
Damir Jelić
b1d1871d11 commands: Add support for encryption key imports/exports. 2019-02-01 19:56:47 +01:00
Damir Jelić
1f67491325 config: Small config description fixes. 2019-01-31 10:51:51 +01:00
Damir Jelić
24da24304e commands: Realing the redact command help message. 2019-01-29 15:35:42 +01:00
Damir Jelić
3a17c5ae96 server: Handle case of updating the lag if we don't have a client. 2019-01-29 15:16:34 +01:00
Damir Jelić
7a908e79d0 commands: Modify the redact command to use event ids.
This closes #32.
2019-01-29 15:13:58 +01:00
Damir Jelić
67f3b1883a buffer: Fix redactions for multiline messages. 2019-01-28 16:56:32 +01:00
Denis Kasak
6c1abe934b Revert "Fix parsing of unclosed Markdown delimiters."
This reverts commit a8ea6504e9.

It causes problems for colour support and it doesn't really fix the
issue in full generality. The proper fix is to include a real Markdown
parser.
2019-01-27 15:36:42 +01:00
Damir Jelić
db17c6272d colors: Add html bg color support. 2019-01-24 18:26:19 +01:00
Damir Jelić
fa0d870deb server: Only set the lag from the response if it's less than the current lag. 2019-01-24 11:56:08 +01:00
Damir Jelić
92ff15943c server: Turn the connected flag into a property.
This way we update the necessary bar items automatically, when we change
the flag.
2019-01-24 11:54:22 +01:00
Damir Jelić
25f4f43b3f server: Only fetch the joined member list for rooms that are missing members. 2019-01-24 11:09:57 +01:00
Damir Jelić
5228e50e2e server: Use atomic_write for the device id file. 2019-01-23 16:37:26 +01:00
Damir Jelić
f56279b29d Merge branch 'configurable-reconnect-delay' into olm-command 2019-01-23 14:59:09 +01:00
Denis Kasak
fffb43fda0 Make reconnect delay configurable, per server. 2019-01-23 14:57:57 +01:00
Damir Jelić
58705661f8 server: Don't do full key queries anymore. 2019-01-21 16:05:44 +01:00
Damir Jelić
a34d1e68b0 server: Handle case where we receive a sent message first in a sync. 2019-01-21 00:27:04 +01:00
Damir Jelić
f57b1b32c0 completion: Don't use the Olm class directly. 2019-01-19 16:11:28 +01:00
Damir Jelić
5476d8e500 config: Change the import for the encryption logger. 2019-01-19 15:45:51 +01:00
Damir Jelić
c9ddcf7e78 matrix: Room display name calculation method is now a property. 2019-01-19 12:37:05 +01:00
Denis Kasak
8bc83842ee Implement MockConfig object.
To be used from tests that use code that expects `G.CONFIG` to be
defined, e.g.

    G.CONFIG = MockConfig()
2019-01-16 16:37:53 +01:00