Details
Details
Tested this diff stack by playing around with ChatInputBar on both iOS simulator and Android device:
- focus the text input and verify the keyboard is up and the camera buttons are animated correctly
- try to send the message, verify the send button is animated correctly
- verify the text input can be unfocused and keyboard is hidden
- verify the draft works: write text, navigate from the chat, navigate into the chat again, verify the text is kept and the $
- verify the edit mode works by editing a message
- try to close the chat while editing a message - the alert should be shown
- try to join a thread
- try to select typed text
Diff Detail
Diff Detail
- Repository
- rCOMM Comm
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
This diff migrates a state to a ref, so I did some additional reading to see if that makes sense. I wondered if there might be some reason why isExitingDuringEditMode was originally implemented as React component state instead of an instance variable, and in particular I was trying to see if it's used during render anywhere.
I wasn't able to find any places where isExitingDuringEditMode is used during render. It appears to only be used for "spot checks" in various callbacks, so I think it makes sense to migrate it to a ref.