Skip to content

Hi-Res Photo Sharing With Automatic Resizing #10079

Description

@cod3monk

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

  1. Take or select a high-resolution photo (48MP) on an iPhone.
  2. Open the photo in the system Photos app.
  3. Tap Share.
  4. Select Mattermost from the iOS share sheet.
  5. Attempt to share the image to a Mattermost channel.

Also:

  1. Take hi-res photo
  2. 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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions