Skip to content

Bubble animation overshoots when you send a message. #4127

@ara4n

Description

@ara4n

Steps to reproduce

  1. Send a message. (This video slowed down 3x, with a frame count in the top left to help identify frames):
oversteer.mp4
  1. Note that the newly sent bubble animates in nicely from the bottom, sliding into its destination position at frame 34 without overshooting.
  2. Note also that the day separator in the timeline also animates roughly in sync with this and doesn't overshoot its stopping place.
  3. However, two things go wrong with the timeline's existing msg bubble's animation as it slides upwards:
  • It appears to overshoot its destination position - and starting at frame 33 (and finishing at frame 40) it moves downwards. This is particularly obvious as the gap closes between the upper and lower bubbles. This is out of sync with the animation of (say) the day separator in the timeline, making the bubble animation feel inconsistent and as if the bubble somehow has some elasticated inertia connecting it to the timeline (like iMessage's bubbles) - which is surely not the intention.
  • The send receipt of the existing bubble unexpectedly pops into view at around 30% opacity in frame 36 and then fades away (compare frame 35 and 36 to see it pop).

It looks as if something is going wrong with the animation for removing the send receipt of the existing message, which in turn causes the appearance of the overshoot animation of the existing bubble.

It's also worth noting that the bottom-right corner of the existing message pops from being rounded to right-angle on frame 17, although that's nothing like as noticeable. (Still, if it could be tweened, it'd certainly look prettier, if only subliminally).

Literally every time I send a message my eye gets grabbed by the overshooting animation, and while it's a relatively minor cosmetic blemish, it's on the critical path of every message you send, so it stacks up over time. I promised myself not to file a bug on it until more important things had been addressed... but thought it's now high time to get it on the radar.

Outcome

What did you expect?

The contents of the timeline should all animate upwards in sync with each other when a new message is sent.

That means that existing send receipts should be hidden by the new bubble coming in over the top of them (as happens today), and then be removed without causing further vertical shifts.

What happened instead?

Instead, something weird is happening where existing send receipts pop in at a higher z-index, while fading out, and seemingly cause the bubble they're associated with to oversteer in its animation and then drift downwards once the SR has faded away.

Your phone model

iPhone 12 Pro Max

Operating system version

iOS 18.5

Application version

921

Homeserver

matrix.org

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-TimelineO-FrequentAffects or can be seen by most users regularly or impacts most users' first experienceS-MinorImpairs non-critical functionality or suitable workarounds existT-Defect

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions