When sharing a high-resolution photo from the iOS Photos app directly to Mattermost via the iOS share sheet, the Mattermost app rejects the image because its resolution is too high.
Other iOS apps, e.g. Signal, handle the same workflow without requiring any manual intervention. They appear to either:
- communicate their supported image constraints to iOS so that the system provides an appropriately resized image, or
- automatically resize/compress the image in the receiving app before uploading it.
Mattermost should provide a similar user experience.
Steps to reproduce
- Take or select a high-resolution photo (48MP) on an iPhone.
- Open the photo in the system Photos app.
- Tap Share.
- Select Mattermost from the iOS share sheet.
- Attempt to share the image to a Mattermost channel.
Also:
- Take hi-res photo
- Open a chat on Mattermost app and attach the photo to a message
Current behavior
Mattermost rejects the image and reports that the image resolution is too high after upload.
The user has to sick with lower resolution photos, manually resize the image or use another workaround before it can be uploaded.
Expected behavior
Sharing a photo from the iOS Photos app to Mattermost should work transparently. Also selecting any resolution photos should be accepted.
If the original image exceeds Mattermost’s supported resolution, the integration should preferably request an appropriate representation from iOS. If this is not possible or sufficient, the Mattermost app/share extension should resize the image automatically client-side before uploading it.
The resized image should preserve the aspect ratio and use the highest resolution supported by Mattermost.
Comparison with other apps
The same high-resolution photos can, for example, be shared directly from the iOS Photos app to Signal without an error or additional user interaction.
This suggests that there are mechanisms available on iOS to either negotiate/request a suitable image representation or resize the image as part of the receiving application’s share workflow.
Why this matters
Modern iPhones routinely create images whose dimensions can exceed Mattermost’s supported image limits. Sharing a photo directly from Photos is a standard iOS workflow, so users should not need to know about Mattermost’s server/image-processing limitations or manually resize images beforehand.
Ideally, this should also cover images received through the iOS share extension generally, not only images originating from Photos.
May also be an issue on Android.
When sharing a high-resolution photo from the iOS Photos app directly to Mattermost via the iOS share sheet, the Mattermost app rejects the image because its resolution is too high.
Other iOS apps, e.g. Signal, handle the same workflow without requiring any manual intervention. They appear to either:
Mattermost should provide a similar user experience.
Steps to reproduce
Also:
Current behavior
Mattermost rejects the image and reports that the image resolution is too high after upload.
The user has to sick with lower resolution photos, manually resize the image or use another workaround before it can be uploaded.
Expected behavior
Sharing a photo from the iOS Photos app to Mattermost should work transparently. Also selecting any resolution photos should be accepted.
If the original image exceeds Mattermost’s supported resolution, the integration should preferably request an appropriate representation from iOS. If this is not possible or sufficient, the Mattermost app/share extension should resize the image automatically client-side before uploading it.
The resized image should preserve the aspect ratio and use the highest resolution supported by Mattermost.
Comparison with other apps
The same high-resolution photos can, for example, be shared directly from the iOS Photos app to Signal without an error or additional user interaction.
This suggests that there are mechanisms available on iOS to either negotiate/request a suitable image representation or resize the image as part of the receiving application’s share workflow.
Why this matters
Modern iPhones routinely create images whose dimensions can exceed Mattermost’s supported image limits. Sharing a photo directly from Photos is a standard iOS workflow, so users should not need to know about Mattermost’s server/image-processing limitations or manually resize images beforehand.
Ideally, this should also cover images received through the iOS share extension generally, not only images originating from Photos.
May also be an issue on Android.