svg: Report frame info
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/442>
This commit is contained in:
parent
1ea4a3ad5d
commit
e61b3357ea
1 changed files with 11 additions and 0 deletions
|
|
@ -84,6 +84,8 @@ impl Svg {
|
|||
|
||||
tiles.set_original_dimensions((image.info().width, image.info().height));
|
||||
|
||||
let mut is_first_frame = true;
|
||||
|
||||
loop {
|
||||
let tile_request = {
|
||||
let mut request = request_store.write().unwrap();
|
||||
|
|
@ -138,6 +140,15 @@ impl Svg {
|
|||
|
||||
match image.specific_frame(frame_request).await {
|
||||
Ok(frame) => {
|
||||
if is_first_frame {
|
||||
is_first_frame = false;
|
||||
|
||||
let mut metadata: Metadata = Metadata::default();
|
||||
metadata.set_frame_metadata(&frame);
|
||||
|
||||
updater.send(DecoderUpdate::Metadata(Box::new(metadata)));
|
||||
}
|
||||
|
||||
let position = (
|
||||
tile_instructions.area.x() as u32,
|
||||
tile_instructions.area.y() as u32,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue