Skip to content

Comments

[FIX] Preserve voice message if recording is interrupted#3397

Merged
diegolmello merged 2 commits intodevelopfrom
fix.preserve-voice
Sep 23, 2021
Merged

[FIX] Preserve voice message if recording is interrupted#3397
diegolmello merged 2 commits intodevelopfrom
fix.preserve-voice

Conversation

@diegolmello
Copy link
Member

@diegolmello diegolmello commented Sep 22, 2021

Proposed changes

When an event interrupts an ongoing voice recording in IOS, the OS stops the recording. This was not handled properly before: The message was immediately completely lost and it was not possible to make a new voice message before force-quitting and restarting the app (because the Expo recorder was left in loaded state).

This PR stops the recording in this case, indicating it was stopped. The user can send or discard the voice message up to that point at any time afterwards.

I also changed the GUI to make it more clear. See below.

Issue(s)

#3002
#3388

How to test or reproduce

New behavior

  • Start a voice message recording
  • while the recording is running, call the device or activate Siri.
  • App should stop the recording, but give you a way to send the message

Old behavior

  • Same steps, but the app would trash the voice message

Screenshots

Record in progress: I've replaced the red cross and green check by a red trash icon and a green send icon. IMHO this is much more clear: The green icon in fact immediately sends the message, the red icon immediately trashes the message (all my users highly appreciate this change as well).
Behind the time display the "record" symbol states that the recording is running.
2021-09-17_21-56-55

This is an incoming call. As soon as IOS stops the recording, I'll indicate this with the "pause" symbol behind the time display. The time is stopped and shows the length of the message.
2021-09-17_22-00-28

After the call was finished, you can still send or trash the waiting message at any time:
2021-09-17_22-01-34

Types of changes

  • Bugfix (non-breaking change which fixes an issue)
  • Improvement (non-breaking change which improves a current function)
  • New feature (non-breaking change which adds functionality)
  • Documentation update (if none of the other choices apply)

Checklist

  • I have read the CONTRIBUTING doc
  • I have signed the CLA
  • Lint and unit tests pass locally with my changes
  • I have added tests that prove my fix is effective or that my feature works (if applicable)
  • I have added necessary documentation (if applicable)
  • Any dependent changes have been merged and published in downstream modules

Further comments

Would be fine to have this in the next release together with my previous fix merge to have the voice message fixes complete.

@diegolmello
Copy link
Member Author

@jacotec LGTM! Thanks for your contribution!
We'll just run some QA tests and we'll merge soon.

I only fixed a couple of things and removed the pause icon.
IMO the recording being shown only when the recording is happening should be enough.
Screen Shot 2021-09-22 at 15 58 51
Screen Shot 2021-09-22 at 15 58 35

@jacotec
Copy link
Contributor

jacotec commented Sep 23, 2021

@diegolmello Great, thanks! I'm fine to remove the pause icon ;-)

@diegolmello diegolmello merged commit 30aab71 into develop Sep 23, 2021
@diegolmello diegolmello deleted the fix.preserve-voice branch September 23, 2021 12:16
ivnxyz pushed a commit to NextiaDev/Rocket.Chat.ReactNative that referenced this pull request May 26, 2023
…3397)

* RocketChat@7c25909

* Minor changes

Co-authored-by: Marco Jakobs <mj@jacotec.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants