When a message has an image and you tap the image to see it in the lightbox, we use a Hero widget to cause the image to animate from its old position and size in the message list to its new position and size in the lightbox, and to do the same in reverse when you navigate back.
Currently, though, our implementation of this causes those "hero" animations to happen also when you navigate from one message list to another that happens to contain the same image-bearing message. That doesn't make so much sense, and tends to look glitchy. It can look extra glitchy when the message is off screen either before or after the navigation (or even both), as spotted by @alexmv:
https://chat.zulip.org/#narrow/stream/48-mobile/topic/Images.20have.20the.20wrong.20z-index/near/1932012
So we should fix that.
I think the way to implement this will be to augment the tag parameter we pass to Hero so that it identifies not only the message and the image within the message, but the message list the message is shown in.
When a message has an image and you tap the image to see it in the lightbox, we use a
Hero
widget to cause the image to animate from its old position and size in the message list to its new position and size in the lightbox, and to do the same in reverse when you navigate back.Currently, though, our implementation of this causes those "hero" animations to happen also when you navigate from one message list to another that happens to contain the same image-bearing message. That doesn't make so much sense, and tends to look glitchy. It can look extra glitchy when the message is off screen either before or after the navigation (or even both), as spotted by @alexmv: https://chat.zulip.org/#narrow/stream/48-mobile/topic/Images.20have.20the.20wrong.20z-index/near/1932012
So we should fix that.
I think the way to implement this will be to augment the
tag
parameter we pass toHero
so that it identifies not only the message and the image within the message, but the message list the message is shown in.