Open errorists opened 4 years ago
One clarification, correct me if anything is not accurate:
1) I set messages to disappear in the chat to 30 seconds, I am A and chatting with B, which has not turned on this feature. 2) I send a message to B. This message will disappear from my device after 30 seconds. The message will disappear from B's device 30 seconds after it was read. 3) B sends me a reply. This message will disappear from A device 30 seconds from it has been read. by me. What happens though on B's device? will it disappear after 30 seconds after it was sent, or it will stay there?
Essentially the question is whether the settings apply to both A & B devices or are a bit asymmetrical.
@cammellos So B has not turned on this feature. Then all messages sent from B's device will not have the timer or the 'disappearing flag' enabled. they will stay in history on both B's and A's device, and this can't be changed retroactively. So I think, yes. it's asymmetrical. I think it's best to think of it as a per message feature, and it's only you who composed and is about to send this message, that can say if it should disappear or not
As discussed in chat, I post this for reference on how signal's implements it:
I have checked signal's app, just to make sure, it seems like they are doing it differently from what we are going for: Settings are for the whole chat, so if either me or you set a timer on the chat, any message (on both sides), sent from either of us will disappear in the time set. A notification is set on the chat every time this changes.
By popular demand, I designed this with a chat setting similar to what @cammellos described above. Once we're ready to work on this we can discuss which one to choose
Really looking forward to this feature, agree the chat-wide for both parties makes a lot of sense, but we should have one-shot messages also.
I realise this is just design, but to put this somewhere, another common period is 1 week which should be included. The term "dissapearing messages" is too weak and wafty, we could probably come up with something better there. "Message Shredder", "Destroy Message", "Self-destructing Messages". Something shorter with more punch is more fitting for this.
By popular demand, I designed this with a chat setting similar to what @cammellos described above. Once we're ready to work on this we can discuss which one to choose
how about edit button isn't available?
@kberey can you elaborate what you wish to edit in the interface? The exact duration of a disappearing message, or the message itself?
@kberey can you elaborate what you wish to edit in the interface? The exact duration of a disappearing message, or the message itself?
@errorists the message itself. for typos or some grammar error.
@kberey that's outside the scope of this issue, feel free to start a discuss thread with a feature request to edit messages after sending them, so we can take it over from there, thanks.
Hey guys. Any updates on the disappearing messages feature? No one has been assigned and I think this is a really top priority feature as every other privacy messenger has this.
Feature Issue
The scope of this issue is to add a disappearing messages feature, something which can already be found on other privacy sensitive messengers and a frequent user request. The purpose of this, is to enable ephemeral conversations where the things you say expire and are deleted once said.
User Story
As a user, I want to set my messages to disappear after they've been received, so that if someone were to gain access to my chats, he wouldn't be able to read the history or just to keep my conversations tidy.
Description
First of all, this is limited to private chats only.
Available options are • 30 seconds • 1 hour • 1 day • Never (off)
This setting persists in the chat, it has to be manually turned off or changed to deactivate. Each setting is indicated by a ring surrounding the Send button, the ring reflects the duration shown in the menu, ¼ for 30 seconds, ½ for 1 hour and ¾ for 1 day. The ring disappears if the feature is disabled.
Long press on the button should be followed by haptic feedback when the event to open the menu fires. The upward send arrow inside it should change to a 'cancel' once opened. • Pressing the button again dismissed the menu. • Pressing outside of the menu, dismissed it. • Pressing on any of the options dismisses the menu with selecting the option
Menu opens and closes with an animation, I used a Spring physics animation but I believe a bezier like
cubic-bezier(0.165, 0.84, 0.44, 1)
would work equally well. 0.3 seconds for the duration.Behind the menu there's a 10% black overlay, same animation values as the menu
This timer counts down the time until the message is removed from your chat. The recipient of this message will have the same timer placed in his message, that starts to count down when the message is first seen (opened and scrolled to in chat). If notifications were to be introduced before this feature, a push notification for a disappearing message would trigger the timer only once you press on the notification. Alternatively we can substitute the message text in such notification with a 'Disappearing message' text label so the body of the message is hidden until made visible, this way there's no trace of history in your notifications tray. TBD
This should be divided into a smaller amount of steps, I used 24 for the prototype above. I believe it might help with performance and we don't need to animate it that precisely
Acceptance Criteria
The design in its entirety is introduced into the UI and the switch to enable messages to disappear makes its way into our lovely protocol.
You can play with a rough draft of a prototype here
You can find the designs here
Notes
🙏 Thanks, everyone who contributes to this issue is awesome in my book! 🙏