69 Commits

Author SHA1 Message Date
7707242d10 Merge branch 'async' 2020-05-28 09:38:48 +01:00
bd76603c54 Upgrade to Delta v1.33.0
Despite the incremental version number, this is a backward-incompatible
change, switching code to async. It does allow us to reduce the number
of threads significantly, though.
2020-05-28 09:37:50 +01:00
9e764d72a1 Add image receipt to the text channel
This is disturbingly useless with Empathy because it doesn't know how
to display text/html parts, or plain image/png parts either :/

Time to start playing with KDE Spacebar? How does it handle them?
2020-05-27 01:19:43 +01:00
b9faad742b Partial implementation of contact removal
Empathy needs you to cycle the connection before it notices.
2020-05-24 00:24:15 +01:00
370f5076a1 Add and set the "Bcc self" option. 2020-05-23 23:52:42 +01:00
373311e826 HAXXX: A crude form of setup message acceptance 2020-05-23 22:49:15 +01:00
67a8715a25 Add an (untested) service file 2020-05-23 17:57:37 +01:00
c773146b26 It's called Mobian, not Moblin 2020-05-23 17:51:39 +01:00
7b1b8bdc83 cargo-about output 2020-05-23 17:48:13 +01:00
d06badfc96 *sobbing subsides* 2020-05-23 16:05:05 +01:00
8dbd023718 More sobbing 2020-05-23 14:48:35 +01:00
7cee6348fd Cry in public 2020-05-23 14:35:26 +01:00
14aa639a4b Fight with mobile linux for a bit 2020-05-22 10:29:10 +01:00
efe97a33c4 Fix messages on self-initiated channels 2020-05-21 11:06:07 +01:00
d77d04e9b1 Fix messages on remote-initiated chats 2020-05-21 10:49:33 +01:00
db7ecc6d98 Add the ContactList interface to the manager file 2020-05-21 10:49:15 +01:00
15174ea03f Add a very broken ContactList + outgoing channel implementation
Right now, messages don't show on the padfoot side any more, but they
do get sent and received successfully on the other side, and empathy
can manage contacts now, so I'm calling it an overall win.
2020-05-21 02:30:47 +01:00
aae7607c7f Pin to the same version of rust nightly as delta 2020-05-19 00:16:01 +01:00
825f5d90ed Update compile and install instructions 2020-05-18 23:40:43 +01:00
a95be7ee4b Implement sending text messages
This works in a very simplistic way, but it's enough for two-way
communication. Hurrah!
2020-05-18 23:08:11 +01:00
72947bc99d Allow incoming messages to be seen by Empathy
MDNs don't work because the sender is not in a "real chat" yet- it's
coming from an unknown user - but we mark them as seen anyway.
2020-05-18 21:15:56 +01:00
b511dd873b Make text messages show on incoming 2020-05-18 19:37:35 +01:00
667eb3b3f6 By hook or by crook, amke empathy open a window 2020-05-18 01:57:22 +01:00
cb463336bc Rework automatic code generation 2020-05-17 23:23:45 +01:00
1e481d4c9a Wire up the additional channel interfaces a bit 2020-05-17 22:49:41 +01:00
e5e06c55f9 Reorder Channel::new args 2020-05-17 22:37:25 +01:00
576fec63cd Complete channel-closing behaviour
We now emit appropriate signals and return a non-error status code when
a channel is closed.
2020-05-17 22:23:57 +01:00
782662b82f Flesh out channels some more. They can now be closed.
As part of this, move Connection's queue to mpsc and have all channels
for a connection share that connection's main loop.
2020-05-17 22:05:24 +01:00
1eefce4f1c Create a channel on incoming messages
We don't yet emit signals, but we're getting closer.

This commit also partially implements the deprecated ListChannels
method on the Connection interface.
2020-05-17 15:20:16 +01:00
b814a9aab0 Partially on the way to receiving an incoming message
This is getting really ugly, but let's run with it for now.
2020-05-17 03:01:21 +01:00
49362a6606 Ignore lints in autogenerated code 2020-05-17 00:55:29 +01:00
7003b56ce6 A bit more progress on channels 2020-05-17 00:49:46 +01:00
09afdf51a4 Add DBUS stubs for a basic Channel type 2020-05-16 23:05:14 +01:00
a202dd84e8 Clean up dbus::arg::Variant type alias 2020-05-16 22:11:38 +01:00
0f9dcf476b Sync the .manager file 2020-05-16 21:33:58 +01:00
54a73c8219 Advertise the protocol interfaces correctly 2020-05-16 21:25:40 +01:00
011ee98340 Implement the Presence interface for the protocol 2020-05-16 21:22:49 +01:00
4a501b2e07 Backfill the Protocol interface 2020-05-16 21:05:58 +01:00
9473a13b65 Finish implementing the Contacts interface 2020-05-16 20:54:05 +01:00
9564a16aa2 Fix compilation 2020-05-16 20:44:34 +01:00
52f13a3589 Disable the ContactList interface for now 2020-05-16 20:19:04 +01:00
64bbaccc3a Move name escaping into its own module 2020-05-16 20:16:23 +01:00
53bce50978 Extract tree building from Connection#run 2020-05-16 19:42:41 +01:00
411f34e6ce Make disconnection clean up completely
Now we can disconnect and reconnect the same account multiple times.
2020-05-16 19:26:52 +01:00
169249b716 Don't build a new connection if it already exists
There was also a lot of unneeded overhead in Connection::new() to get
the path to compare against, so split that out into a settings struct
2020-05-16 18:44:02 +01:00
e08ec6b476 Replace a sleep() with an MPSC channel 2020-05-16 18:09:40 +01:00
640948241a Address a number of clippy complaints 2020-05-16 14:51:41 +01:00
33d522779a Split padfoot/connection.rs into multiple files 2020-05-16 14:23:20 +01:00
c0e62ba6de Update README.md 2020-05-15 00:54:05 +01:00
41309d9f39 Look online to Empathy
It seems Empathy requires the ContactLists and Presence interfaces if
it is to use your connection and show it as online. In addition, we
were emitting the "connected" signal from the wrong source - it needed
to have the object path of the specific connection, rather than the
general connection object path.

So now we can show as connected in Empathy, but we can't add a contact
yet - presumably that's another interface.

Sending a message to a connected deltachat account does nothing yet, as
the message from deltachat-core is unhandled.
2020-05-15 00:42:15 +01:00