Discord's forwarding puts the original message inside the new one as message_snapshots - the forwarded content is not in content, which is empty or a
bare comment. moho never reads that field (no occurrence of message_snapshot
anywhere in the daemon or the renderer), so a forwarded message shows up as a line
from somebody with nothing in it.
This is a common gesture now: people forward a message from one server to another
instead of screenshotting it, and in moho those conversations have holes in them.
What is needed
Read message_snapshots[].message in extract_body (backend/discord.rs) and
render it as a quoted block attributed to its original author, the way a reply
preview already is (reply_preview).
Carry the snapshot's attachments and embeds too - a forwarded image is the usual
case.
Done looks like: a forwarded message reads as the thing that was forwarded, with
some mark saying it came from elsewhere.
Reference: the official Discord client.
Discord's forwarding puts the original message inside the new one as
`message_snapshots` - the forwarded content is not in `content`, which is empty or a
bare comment. moho never reads that field (no occurrence of `message_snapshot`
anywhere in the daemon or the renderer), so a forwarded message shows up as a line
from somebody with nothing in it.
This is a common gesture now: people forward a message from one server to another
instead of screenshotting it, and in moho those conversations have holes in them.
**What is needed**
- Read `message_snapshots[].message` in `extract_body` (`backend/discord.rs`) and
render it as a quoted block attributed to its original author, the way a reply
preview already is (`reply_preview`).
- Carry the snapshot's attachments and embeds too - a forwarded image is the usual
case.
**Done looks like:** a forwarded message reads as the thing that was forwarded, with
some mark saying it came from elsewhere.
Reference: the official Discord client.
extract_body now reads message_snapshots and renders the forwarded message as a quoted block, and the snapshot's pictures become attachments of the message - a forwarded picture is a picture.
One decision worth writing down: it is quoted rather than attributed. A snapshot is deliberately frozen and carries no author, because on Discord's side a forward is the message and not the person who wrote it. Attributing it would mean inventing a name the payload does not contain.
Forwarding out of moho works too, which was not asked for here but is the other half of the same gesture.
Finished.
Handled in nobilis [df52e49](https://git.salastil.com/Salastil/nobilis/commit/df52e49) and [2aee7a2](https://git.salastil.com/Salastil/nobilis/commit/2aee7a23bf59b2b27a624312b45f1c27ce5e0c1a), with the sending half in [81f1b0b](https://git.salastil.com/Salastil/nobilis/commit/81f1b0b) and moho [d7c4d81](https://git.salastil.com/Salastil/moho/commit/d7c4d81).
`extract_body` now reads `message_snapshots` and renders the forwarded message as a quoted block, and the snapshot's pictures become attachments of the message - a forwarded picture is a picture.
One decision worth writing down: it is quoted rather than attributed. A snapshot is deliberately frozen and carries no author, because on Discord's side a forward is the message and not the person who wrote it. Attributing it would mean inventing a name the payload does not contain.
Forwarding out of moho works too, which was not asked for here but is the other half of the same gesture.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Discord's forwarding puts the original message inside the new one as
message_snapshots- the forwarded content is not incontent, which is empty or abare comment. moho never reads that field (no occurrence of
message_snapshotanywhere in the daemon or the renderer), so a forwarded message shows up as a line
from somebody with nothing in it.
This is a common gesture now: people forward a message from one server to another
instead of screenshotting it, and in moho those conversations have holes in them.
What is needed
message_snapshots[].messageinextract_body(backend/discord.rs) andrender it as a quoted block attributed to its original author, the way a reply
preview already is (
reply_preview).case.
Done looks like: a forwarded message reads as the thing that was forwarded, with
some mark saying it came from elsewhere.
Reference: the official Discord client.
Finished.
Handled in nobilis df52e49 and 2aee7a2, with the sending half in 81f1b0b and moho d7c4d81.
extract_bodynow readsmessage_snapshotsand renders the forwarded message as a quoted block, and the snapshot's pictures become attachments of the message - a forwarded picture is a picture.One decision worth writing down: it is quoted rather than attributed. A snapshot is deliberately frozen and carries no author, because on Discord's side a forward is the message and not the person who wrote it. Attributing it would mean inventing a name the payload does not contain.
Forwarding out of moho works too, which was not asked for here but is the other half of the same gesture.