Jason Simmons 9872e0ee2f Request another frame in ImageReaderSurfaceProducer.dequeueImage if more images are pending in the queue (flutter/engine#55944)
ImageReaderSurfaceProducer will request a frame when an image is enqueued. But there is no guarantee that each request will produce an additional frame.
Multiple requests happening within one vsync interval could be merged into one frame.  If no other frame is scheduled, then some images will remain in the queue and the image shown on screen will not be the latest image.

With this change, ImageReaderSurfaceProducer will continue requesting frames after consuming an image if the queue is not empty.

Fixes https://github.com/flutter/flutter/issues/156903
Fixes https://github.com/flutter/flutter/issues/155787
2024-10-21 15:31:14 +00:00
Languages
Dart 75%
C++ 16.5%
Objective-C++ 2.9%
Java 2.8%
Objective-C 0.7%
Other 1.9%