element-hq / element-hq/element-web
Insert GIFs like any other image
- Dominant language
- TypeScript
- Stars
- 13.5k
- Forks
- 2.8k
- PR merge metrics
- PR metrics pending
Description
### Description
When I want to insert à specific GIF (from web for instance) to a room... I can't. A copy/paste turns the GIF into a .png image (so no animation), and I can't find any other way to insert it. Inserting a direct link is no more than this : people has to clic the link to see the GIF and there is no embedded preview of the gif (unsatisfactory).
### Steps to reproduce
- get any gif from a web page
- Copy/Paste the Gif, or it's url to a room or use "share image" option from smartphone
- See only the url being sent as a new message, or the GIF converted into a .png static image (for copy/paste from web)
Bellow the different results (copy url, copy/paste image, insert direct gif url, share from smartphone) :

#### Describe how what happens differs from what you expected.
We should be able to keep the .gif format when copy/pasting the image. The same way, get the GIF directly displayed embedded instead of its url, from smartphone.
Giphy integration here does not fit the need, as we don't want a random gif to be sent, but a specific one... and most of the time a giphy request just falls completely off.
You can just try with "!giphy Luke no star wars" for instance to see the flaw...
Logs being sent: yes/no
### Version information
Versions
Version de Element : 1.7.15
version de olm : 3.2.1
- **Platform**: desktop & smartphone, not tester for browser version but probably the same...
- **OS**: Linux, Android
### Note
Not sure if this is a bug, a behavior to be changed or just a possible enhancement, so feel free to change category of issue if needed..!
Contributor guide
Research direction
Start by reproducing GIF copy/paste, direct-URL insertion, and smartphone sharing in a room on desktop and Android. Done means a specific GIF remains animated when pasted or shared, and a direct GIF URL is embedded rather than sent only as a link; compare the reported Giphy behavior separately.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100