element-android icon indicating copy to clipboard operation
element-android copied to clipboard

Create DM room only on first message

Open giomfo opened this issue 3 years ago • 3 comments

User Story

  • As a user sending a DM to someone I do not have an active DM conversation with
  • I want the room to be created only when I first send a message (text, image or voice)
  • So that the recipient receives the invite only when there is a message in the room

Detail

  • The user selects someone (Corey) to DM, the current implementation is :

  • [x] We request first to rename the option "CREATE" with "GO"

  • [x] When the user presses 'GO':

    • if there is already a DM with Corey : open the DM
    • if there isn't DM with Corey, instead of the room being created (and Corey being invited to an empty room), The user sees the following interface with the composer (the room has not been created). image
  • [x] If the user doesn’t send a message ( = Dismiss modal (close button)) no room is created. The user has to start again.

  • [x] If the user does send a message, then the DM room is created by inviting Corey and the message is sent.

Additional Requests

  • [x] If several contacts have been selected in the picker before clicking on the GO option. The interface is adapted : image

  • [x] If the user selects at least one email address in the selected contact list, the resulting DM will be unencrypted. We have to hide the following tile in the interface image

giomfo avatar Mar 11 '22 22:03 giomfo

@Florian14 we have to apply the same process (create DM only on first message) when the end user decides to start a DM from the room member details screen (by clicking on "Direct message" option), whereas the DM is not existing yet. image

giomfo avatar Jun 17 '22 15:06 giomfo

UX Review 11/07/22 : Reviewing the whole flow of Start a Chat

  • [x] More space is needed next to the GO button (on the right) - security padding is mandatory on mobile min 12px
  • [x] Title in the fake room should read " Direct message" in singular
  • [x] We need a loading Screen between the screen when user sends the first message and when the room is created. The sting should read: "We're creating your room" (see #6970)
  • [ ] If the invitee has not joined the room yet, we should hide the calling options in the nav. (see #6973)
  • [ ] When inviting email address only the subsequent screen displays: " Empty Room" Instead of showing the full email address string to the user. This will be managed by #6912
  • [ ] When inviting email addresses + Matrix user, The email string is not recognised in the fake room meaning that: When choosing an email + a matrix ID > Next step shows only the Matrix ID and does not report the email address previously selected. @gaelledel we have to discuss about this point, we don't know what is expected in this use case
  • [ ] When an invite is done by email and the person receiving the email creates an account in Element, we are then observing 3 members in the created room: the email address, the new element account, the sender account. This is NOT expected behaviour --> We should only show 2 members, the requester account and the newly created account. (see #6974)

gaelledel avatar Jul 11 '22 10:07 gaelledel

UX Review 14/09/22

  • [ ] The keyboard should not overlap the timeline display https://github.com/vector-im/element-android/issues/7244
  • [ ] https://github.com/vector-im/element-android/issues/7172

Florian14 avatar Sep 14 '22 15:09 Florian14

I close this issue, each unchecked points (UX improvements and others) will be delivered later. They are all tracked by dedicated issues

giomfo avatar Sep 27 '22 13:09 giomfo